private void backgroundThread_read(object sender, DoWorkEventArgs e) { BackgroundWorker worker = sender as BackgroundWorker; try { while ((worker.CancellationPending!=true)) { //serial IO } //when the shutdown occurs if (worker.CancellationPending == true) { backgroundThread.CancelAsync(); } } catch (Exception exc) { backgroundThread.CancelAsync(); //cancel the thread due to error } }I wrapped this with a messaging class that I made.
Tuesday, June 19, 2012
SerialPort and C#
The SerialPort class in C# has some interesting behavior when combined with a GUI. The GUI threads seem to fight with the SerialPort IO. I found the solution to be to use the BackgroundWorker class.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment