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

线程实施的顺序 等线程执行完再执行下一个线程

2013-04-05 
线程执行的顺序 等线程执行完再执行下一个线程Thread tr nulldelegate void Methinvoker()private voi

线程执行的顺序 等线程执行完再执行下一个线程
 

        Thread tr = null;        delegate void Methinvoker();        private void btSeInfo_Click(object sender, EventArgs e)        {            tr = new Thread(new ThreadStart(SeleInfo));            tr.IsBackground = true;            //  tr.SetApartmentState(ApartmentState.STA);            tr.Start();            Thread tr1 = new Thread(new ThreadStart(StartThreadCaiji));            tr1.Start();        }        private void StartThreadCaiji()        {            tr.Join();            Methinvoker meth = new Methinvoker(MessSeInfo);            this.BeginInvoke(meth);        }        private void MessSeInfo()        {            //Monitor.Enter(obj);            // Monitor.Wait(obj);            MessageBox.Show("数据采集完成,成功采集记录总数:【" + caiji.ToString() + "】条\n 其中红色讯号灯表示通讯错误,绿色表示提取成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);            pbLoad.Value = 0;            tbpg.Text = "";            caiji = 0;            btStopSelect.Enabled = false;            //   Monitor.Exit(obj);        }


当然还可以用Monitor来锁 这就不解释了

热点排行