首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

除去Invoke还有没有其它的主线程委托方式

2013-03-14 
除了Invoke还有没有其它的主线程委托方式有如下代码:public class ThreadClas{public void Start(){AutoRe

除了Invoke还有没有其它的主线程委托方式
有如下代码:

    
    public class ThreadClas
    {
        public void Start()
        {
           AutoResetEvent Are;
           Are = new AutoResetEvent(false);
           ThreadPool.QueueUserWorkItem(ThreadMethod, Are);
        }

        public delegate void ThreadEvent();

        public event ThreadEvent OnThreadExecute;

        private void ThreadMethod(object State)
        {
            AutoResetEvent Are = (AutoResetEvent)State;
            OnThreadExecute();//此处执行用户自定义事件
            Are.Set();
        }
    }

线程方法ThreadMethod当中调用了用户自定义事件OnThreadExecute,为了确保安全,我想把OnThreadExecute委托到主线程执行,但是当前类中没有定义任任何窗口控件,因此没法通过Invoke来实现,请问还有没有其它的方式
[解决办法]
MSDNSynchronizationContext使用看这里
 

热点排行