classPRogram
{
Thread t1;//线程1Thread t2;//线程2Thread t3;//线程3inti =0;staticvoidMain(string[] args)
{
Program demo=newProgram();
demo.GoStart();
}publicProgram()
{
t1=newThread(newThreadStart(run));
t2=newThread(newThreadStart(run));
t3=newThread(newThreadStart(run));
t1.Name="线程⑴";
t2.Name="线程⑵";
t3.Name="线程⑶";
}privatevoidrun()
{while(1==1)
{
Monitor.Enter(this);
Console.WriteLine(Thread.CurrentThread.Name+"输出了"+i);
i++;if(i >1000)
{
ThreadStop();
}
Monitor.Exit(this);
Thread.Sleep(10);
}
}privatevoidThreadStop()
{
Console.WriteLine("执行完成");
t1.Abort();
t2.Abort();
t3.Abort();
GC.Collect();//不知道是否有用,请大牛指点,本人连菜鸟都不是哦}publicvoidGoStart()
{
t1.Start();
t2.Start();
t3.Start();
}
}