当前位置: 代码迷 >> C# >> 如何判断一个线程已经绑定一个方法了
  详细解决方案

如何判断一个线程已经绑定一个方法了

热度:8310   发布时间:2013-02-25 00:00:00.0
怎么判断一个线程已经绑定一个方法了?


public class test
{
        BackgroundWorker _Init = new BackgroundWorker();

        public void CarouselInit()
        {

                _Init.DoWork += new DoWorkEventHandler(_DoWork_Init);
                _Init.RunWorkerAsync();
           
        }

        void _DoWork_Init(object sender, DoWorkEventArgs e)
        {

        }

}




如上代码,当第二次调用CarouselInit()时,_DoWork_Init会被执行两次,那么,该怎么判断_Init.DoWork已经绑定了一个方法呢?

请大侠们教诲教导啊!


------解决方案--------------------------------------------------------
加一个全局变量
private bool bInited=false;


public class test
{
        BackgroundWorker _Init = new BackgroundWorker();
        private bool bInited=false;
        public void CarouselInit()
        {

                if(!bInited)
                 { 
                    bInited=true;
                    _Init.DoWork += new DoWorkEventHandler(_DoWork_Init);
                 }
                _Init.RunWorkerAsync();
           
        }

        void _DoWork_Init(object sender, DoWorkEventArgs e)
        {

        }

}

------解决方案--------------------------------------------------------
http://blog.csdn.net/jinjazz/article/details/2514108
------解决方案--------------------------------------------------------
哥们 你不会在构造时候来注册方法啊
------解决方案--------------------------------------------------------
http://www.cnblogs.com/lujin49/archive/2012/02/23/2364185
  相关解决方案