多線(xiàn)程的運(yùn)行與關(guān)閉
? ? ? ? static void Main(string[] args)
? ? ? ? {
? ? ? ? ? ? Thread childThread1 = new Thread(new ThreadStart(ChildThreadMethod));
? ? ? ? ? ? childThread1.Start();//第一個(gè)線(xiàn)程
? ? ? ? ? ? Thread childThread2 = new Thread(new ThreadStart(ChildThreadMethod));
? ? ? ? ? ? childThread2.Start();//第二個(gè)線(xiàn)程
? ? ? ? ? ? Thread.Sleep(2000);//讓主線(xiàn)程休息兩秒
? ? ? ? ? ? childThread1.Abort();//多線(xiàn)程的關(guān)閉
? ? ? ? ? ? childThread1.Abort();//多線(xiàn)程的關(guān)閉,但這種關(guān)閉法比較粗暴,需要用另一種方法,
? ? ? ? ? ? while (true)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Console.WriteLine("MainThread 聊天中……");
? ? ? ? ? ? ? ? Thread.Sleep(2000);//線(xiàn)程休息2秒(2000毫秒)
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? private static void ChildThreadMethod()
? ? ? ? {
? ? ? ? ? ? while (true)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Console.WriteLine("MainThread 聽(tīng)歌中……");
? ? ? ? ? ? ? ? Thread.Sleep(2000);//線(xiàn)程休息2秒(2000毫秒)
? ? ? ? ? ? }
? ? ? ? }
======================================================
多線(xiàn)程的第二種關(guān)閉方法:設(shè)置標(biāo)志位
? ? ? ? static void Main(string[] args)//主函數(shù)
? ? ? ? {
? ? ? ? ? ? isRun = false;//判斷條件,當(dāng)他是false的時(shí)候,停止
? ? ? ? }
? ? ? ? private static bool isRun = true;//標(biāo)志位,默認(rèn)是true
? ? ? ? private static void ChildThreadMethod()
? ? ? ? {
? ? ? ? ? ? while (isRun)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? Console.WriteLine("MainThread 聽(tīng)歌中……");
? ? ? ? ? ? ? ? Thread.Sleep(200);
? ? ? ? ? ? }
? ? ? ? }