private void HandlerNetworkLayerCommEvent(object sender, EventArgs e) { var networkLayerEvent = e as NetWorkLayerEvent; if (networkLayerEvent == null) { return; } switch (networkLayerEvent.eventType) { case NetWorkEventType.NetworkSendEvent: break; case NetWorkEventType.NetworkReceiveEvent: ApplicationLayerProtocol app = networkDataDeal(networkLayerEvent); OnRaiseAppLayerProtocolEvent( new AppLayerEvent() { eventType = AppEventType.AppReceiveEvent, ID = app.Address, A_PCI = app.A_PCI, listData = app.A_Data }); //传输数据到上层 break; case NetWorkEventType.Other: break; default: break; } }
public ApplicationLayerProtocol networkDataDeal(NetWorkLayerEvent _event) { ApplicationLayerProtocol app = new ApplicationLayerProtocol(); app.Address = _event.ID; int validDataIndex = 1; app.A_PCI = _event.listData[0]; for (int i = validDataIndex; i != _event.listData.Count; ++i) { app.A_Data.Add(_event.listData[i]); } return(app); }
public static void DisposeSendFlag(ApplicationLayerProtocol AppFrame) { //启用线程池 ThreadPool.QueueUserWorkItem(new WaitCallback(SynchroSend), AppFrame); }
public RequestSendEventArgs(ApplicationLayerProtocol frame) { FrameToSend = frame; }