private void _003CInitEvent_003Eb__8(Task <bool> task) { Action action = null; _003C_003Ec__DisplayClass12 _003C_003Ec__DisplayClass = new _003C_003Ec__DisplayClass12(); _003C_003Ec__DisplayClass.task = task; _003C_003Ec__DisplayClass._003C_003E4__this = this; try { Dispatcher dispatcher = base.Dispatcher; if (action == null) { action = new Action(_003C_003Ec__DisplayClass._003CInitEvent_003Eb__9); } dispatcher.BeginInvoke(action); if (_003C_003Ec__DisplayClass.task.Result) { try { _003C_003Ec__DisplayClass14 _003C_003Ec__DisplayClass2 = new _003C_003Ec__DisplayClass14(); _003C_003Ec__DisplayClass2.CS_0024_003C_003E8__locals13 = _003C_003Ec__DisplayClass; _003C_003Ec__DisplayClass2.socketClient = Singleton_Socket.GetInstance(MeetingID, UserID, UserName, false); Task.Factory.StartNew(new Action(_003C_003Ec__DisplayClass2._003CInitEvent_003Eb__a)); } catch (Exception ex) { LogTool.Debug(ex); } } } catch (Exception ex2) { LogTool.Debug(ex2); } }
public void run() { ThreadStart threadStart = null; try { NetworkStream stream = _socket.GetStream(); _in = new StreamReader(stream, Encoding.UTF8); _out = new StreamWriter(stream, Encoding.UTF8); if (_clientId != null) { Dictionary <string, object> dictionary = new Dictionary <string, object>(); dictionary.Add("cmd", "init"); dictionary.Add("clientId", _clientId); dictionary.Add("clientName", _clientName); dictionary.Add("isSync", _isSync); dictionary.Add("clientType", _clientType); dictionary.Add("func", _func); dictionary.Add("forceLogin", _forceLogin); string text = JsonConvert.SerializeObject(dictionary); logger.Debug("initMap-> {0}", text); _out.WriteLine(text); _out.Flush(); } if (threadStart == null) { threadStart = new ThreadStart(_003Crun_003Eb__1); } Thread thread = new Thread(threadStart); thread.IsBackground = false; thread.Start(); while (true) { string text2 = _in.ReadLine(); if (text2 != null) { Console.WriteLine("_in => " + text2); } if (text2 == null) { break; } if (!"_chk".Equals(text2)) { logger.Debug("Receiving message from Server, pass to EventManager"); lock (this) { try { using (List <IEventManager> .Enumerator enumerator = _eventManagerList.GetEnumerator()) { while (enumerator.MoveNext()) { ThreadStart threadStart2 = null; _003C_003Ec__DisplayClassc _003C_003Ec__DisplayClassc = new _003C_003Ec__DisplayClassc(); _003C_003Ec__DisplayClassc.mgr = enumerator.Current; if (_003C_003Ec__DisplayClassc.mgr != null) { _003C_003Ec__DisplayClassc.mgr.clientId = _clientId; _003C_003Ec__DisplayClassc.mgr.msg = text2; if (threadStart2 == null) { threadStart2 = new ThreadStart(_003C_003Ec__DisplayClassc._003Crun_003Eb__3); } Thread thread2 = new Thread(threadStart2); thread2.Start(); } } } } catch (Exception ex) { LogTool.Debug(ex); try { if (_closeEventManagerList != null) { using (List <IEventManager> .Enumerator enumerator2 = _eventManagerList.GetEnumerator()) { while (enumerator2.MoveNext()) { ThreadStart threadStart3 = null; _003C_003Ec__DisplayClassf _003C_003Ec__DisplayClassf = new _003C_003Ec__DisplayClassf(); _003C_003Ec__DisplayClassf.mgr = enumerator2.Current; if (_003C_003Ec__DisplayClassf.mgr != null) { _003C_003Ec__DisplayClassf.mgr.clientId = _clientId; _003C_003Ec__DisplayClassf.mgr.msg = text2; if (threadStart3 == null) { threadStart3 = new ThreadStart(_003C_003Ec__DisplayClassf._003Crun_003Eb__4); } Thread thread3 = new Thread(threadStart3); thread3.Start(); } } } } } catch (Exception ex2) { LogTool.Debug(ex2); } } } } } logger.Debug("InStream got null...socket may be closed..."); } catch (Exception ex3) { logger.Debug("socket runtime exception: {0}", ex3.ToString()); try { try { using (List <IEventManager> .Enumerator enumerator3 = _closeEventManagerList.GetEnumerator()) { while (enumerator3.MoveNext()) { ThreadStart threadStart4 = null; _003C_003Ec__DisplayClass12 _003C_003Ec__DisplayClass = new _003C_003Ec__DisplayClass12(); _003C_003Ec__DisplayClass.mgr = enumerator3.Current; if (_003C_003Ec__DisplayClass.mgr != null) { if (threadStart4 == null) { threadStart4 = new ThreadStart(_003C_003Ec__DisplayClass._003Crun_003Eb__5); } Thread thread4 = new Thread(threadStart4); thread4.Start(); } } } } catch (Exception ex4) { logger.Debug("socket close: {0}", ex4.ToString()); if (_closeEventManagerList != null) { using (List <IEventManager> .Enumerator enumerator4 = _closeEventManagerList.GetEnumerator()) { while (enumerator4.MoveNext()) { ThreadStart threadStart5 = null; _003C_003Ec__DisplayClass15 _003C_003Ec__DisplayClass2 = new _003C_003Ec__DisplayClass15(); _003C_003Ec__DisplayClass2.mgr = enumerator4.Current; if (threadStart5 == null) { threadStart5 = new ThreadStart(_003C_003Ec__DisplayClass2._003Crun_003Eb__6); } Thread thread5 = new Thread(threadStart5); thread5.Start(); } } } } _out = null; _in = null; _socket = null; } catch (Exception ex5) { logger.Debug("socket close: {0}", ex5.ToString()); } } }