C#基于委托实现多线程之间操作的方法

2019-12-30 11:08:09王振洲

易采站长站为您分析C#基于委托实现多线程之间操作的方法,实例分析了C#的委托机制与多线程交互操作的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#基于委托实现多线程之间操作的方法。,具体如下:

有的时候我们要起多个线程,更多的时候可能会有某个线程会去操作其他线程里的属性。

但是线程是并发的,一般的调用是无法实现我们的要求的。

于是,我们在这里就可以用委托,代码如下

 

 
  1. private delegate void DelegateInfo();  private delegate void DelegateIsEnd(); 
  2. //这个是线程调用其他线程的方法  private void Dowork() 
  3. {  // 判断是否需要Invoke,多线程时需要 
  4. if (this.InvokeRequired)  { 
  5. // 通过委托调用写主线程控件的程序,传递参数放在object数组中  this.Invoke(new DelegateInfo(LoadFile)); 
  6. }  else 
  7. {  // 如果不需要委托调用,则直接调用 
  8. this.LoadFile();  } 
  9. //=========线程结束===========  this.BeginInvoke(new DelegateIsEnd(ISEnd)); 
  10. }  private void ISEnd() 
  11. {  wf.Visible = false; 
  12. wf.Close();  wf.Dispose(); 
  13. }  private void LoadFile() 
  14. {  } 
  15. private WaitingForm wf = nu 

希望本文所述对大家C#程序设计有所帮助。


注:相关教程知识阅读请移步到c#教程频道。