从.NET2.0开始,C#中加强了线程安全性,不允许直接的跨线程调用,而是以委托的Invoke方法来进行
delegate void InterThreadInvokeHandler();
void InvokedMethod() {
if(!this.InvokeRequired) {
//Do Something
} else {
InterThreadInvokeHandler hander = new InterThreadInvokeHandler(InvokedMethod);
this..Invoke(handler);
}
}