问题描述
多线程技术为何Volatile声明的不对!!刚学这个,代码是书上的,运行有错误!volatile关键字该如何声明呢????代码如下usingSystem;usingSystem.Windows.Forms;usingSystem.Threading;namespace多线程技术{privatevolatileboolthreadStopped;publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidForm1_Load(objectsender,EventArgse){Threadt=newThread(MyThread);//创建线程实例t.IsBackground=true;//设置赋值线程为后台线程t.Name="MyThread";//辅助线程名称threadStopped=false;t.Start();Thread.Sleep(100);MessageBox.Show("主线程输出!");threadStopped=true;//终止辅助线程}//MyThread方法由一个辅助线程执行privatevoidMyThread(){MessageBox.Show("辅助线程开始!");while(!threadStopped){//这里添加辅助线程要执行的任务Thread.Sleep(10);}MessageBox.Show("辅助线程结束!");//MyThread方法返回后,辅助线程将终止}}}
解决方案
时间: 2024-10-01 22:26:33