/// <summary> /// 异步事件完成(多线程事件) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnAsyncEventCompleted(object sender, SocketAsyncEventArgs e) { _tsa.AddToSyncAction(() => { ProcessSend(e); }); }
/// <summary> /// 接收到连接完成的事件(多线程事件) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void OnAcceptCompleted(object sender, SocketAsyncEventArgs e) { _tsa.AddToSyncAction(() => { ProcessAccept(e); }); }
/// <summary> /// 连接完成(多线程事件) /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected virtual void OnAsyncEventCompleted(object sender, SocketAsyncEventArgs e) { _tsa.AddToSyncAction( () => { OnConnectCompleted(e); }); }
/// <summary> /// 异步事件完成 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void OnAsyncEventCompleted(object sender, SocketAsyncEventArgs e) { _tsa.AddToSyncAction(() => { switch (e.LastOperation) { case SocketAsyncOperation.Receive: ProcessReceive(e); break; case SocketAsyncOperation.Send: ProcessSend(e); break; default: throw new ArgumentException(string.Format("Wrong last operation : {0}", e.LastOperation)); } }); }