工作线程与UI线程交互的方法列举
一,普遍的Control.Invoke和Control.InvokeRequired,以下代码来自互联网。
private delegate void InvokeCallback( string msg);
void m_comm_MessageEvent( string msg)
{
if (txtMessage.InvokeRequired)
{
InvokeCallback msgCallback = new InvokeCallback(m_comm_MessageEvent);
txtMessage.Invoke(msgCallback, new object [] { msg } );
}
else
{
txtMessage.Text = msg;
}
}
二,.net2.0后出现的 类 SynchronizationContext 对其了解来自于Understanding SynchronizationContext (Part I),Understanding SynchronizationContext: Part II,Understanding SynchronizationContext: Part III