private void writeRequestForm_buttonSubmitWrite_Click(object sender, EventArgs e) { writeRequestForm.Close(); byte[] writeReqData = writeRequestForm.getWriteRequestData(); var backgroundScheduler = TaskScheduler.Default; var uiScheduler = TaskScheduler.FromCurrentSynchronizationContext(); f.formBaseDataTable.baseWriteFunctionCode = writeRequestForm.writeFunctionCode; if (f._connectType.Equals("TCP")) { if (f.buttonStop.Enabled) { Task.Factory.StartNew(delegate { f.tcpclient.stopTransfer(); }, backgroundScheduler). ContinueWith(delegate { f.tcpclient.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }, backgroundScheduler). ContinueWith(delegate { f.tcpclient.startTransfer(); }, uiScheduler); } else { Task.Factory.StartNew(delegate { f.tcpclient.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }); } } else { if (f.buttonStop.Enabled) { Task.Factory.StartNew(delegate { f.serialDataTable.StopTransfer(); }, backgroundScheduler). ContinueWith(delegate { f.serialDataTable.WriteSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }, backgroundScheduler). ContinueWith(delegate { f.serialDataTable.StartTransfer(); }, backgroundScheduler); } else { Task.Factory.StartNew(delegate { f.serialDataTable.WriteSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }); } } }
private void writeRequestForm_buttonSubmitWrite_Click(object sender, EventArgs e) { byte[] writeReqData = null; //===================================================================================== var backgroundScheduler = TaskScheduler.Default; writeReqData = writeRequestForm.getWriteRequestData(); if (form1._connectType.Equals("TCP")) { form1.tcpclient.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); } else { form1.serialDataTable.WriteSendReceive(writeReqData, writeRequestForm.writeFunctionCode); } this.Close(); writeRequestForm.Close(); //writeReqData = writeRequestForm.getWriteRequestData(); //if (form1._connectType.Equals("TCP")) //{ // if (form1.buttonStop.Enabled) // { // Task.Factory.StartNew(delegate { form1.tcpclient.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }, backgroundScheduler). // ContinueWith(delegate { form1.tcpclient.startTransfer(); }, backgroundScheduler); // //Task.Factory.StartNew(delegate { form1.tcpclient.stopTransfer(); }, backgroundScheduler). // //ContinueWith(delegate { form1.tcpclient.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }, backgroundScheduler). // //ContinueWith(delegate { form1.tcpclient.startTransfer(); }, uiScheduler); // } // else // { // Task.Factory.StartNew(delegate { form1.tcpclient.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }); // } //} //else //{ // if (form1.buttonStop.Enabled) // { // Task.Factory.StartNew(delegate { form1.serialDataTable.stopTransfer(); }, backgroundScheduler). // ContinueWith(delegate { form1.serialDataTable.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }, backgroundScheduler). // ContinueWith(delegate { form1.serialDataTable.startTransfer(); }, backgroundScheduler); // } // else // { // Task.Factory.StartNew(delegate { form1.serialDataTable.writeSendReceive(writeReqData, writeRequestForm.writeFunctionCode); }); // } //} //writeRequestForm.Close(); //if (form1._connectType.Equals("TCP")) // form1.tcpclient.writeSendReceive(writeReqData, writeMultiReqFuncCode); //else // form1.serialDataTable.writeSendReceive(writeReqData, writeMultiReqFuncCode); //this.Close(); //writeRequestForm.Close(); //===================================================================================== //if (form1._connectType.Equals("TCP")) // form1.tcpclient.writeSendReceive(writeReqData, writeMultiReqFuncCode); //else // form1.serialDataTable.writeSendReceive(writeReqData, writeMultiReqFuncCode); //this.Close(); //writeRequestForm.Close(); }