using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading;
namespace ? 線程測(cè)試{ class MyInterrupt { public static Thread sleeper; public static Thread awaker; public void SleepThread() { for (int i = 1; i < 10; i++) { Console.Write(i + ","); if (i == 4 || i == 8) { Console.WriteLine("Thread is sleep at" + i); try { Thread.Sleep(20);//有點(diǎn)像Timer控件,掐時(shí)間跑程序而已,哪里體現(xiàn)兩個(gè)線程的優(yōu)點(diǎn)? } catch (ThreadInterruptedException e) { Console.WriteLine("Thread is interrupted"+"異常了!"+e.Message); }
} } } public void AwakeThread() { for(int i=10;i
5 回答

牛魔王的故事
TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超3個(gè)贊
對(duì)于單核來(lái)說(shuō),同一時(shí)刻,肯定是只能執(zhí)行一段代碼的。
多線程的作用在于讓多段代碼隨機(jī)執(zhí)行,就不用等待耗時(shí)長(zhǎng)的代碼執(zhí)行完畢??梢?xún)?yōu)先執(zhí)行后面的過(guò)程。

泛舟湖上清波郎朗
TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超3個(gè)贊
你看的這是別人的DEMO,就是在那兒演示怎么寫(xiě)Thread的代碼。當(dāng)然你不明白為什么要有線程了。
這么說(shuō)吧,不用線程的話,你的UI就會(huì)卡死。比如你點(diǎn)下一個(gè)按鈕,假設(shè)要做30分鐘,不用線程的話,你那個(gè)軟件就直接廢了,
誰(shuí)點(diǎn)都不響應(yīng)。

BIG陽(yáng)
TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
如果是winform的話,也沒(méi)有多線程?其實(shí)一個(gè)線程好比是一個(gè)winform窗體而已,可在winform窗體根本沒(méi)有使用線程;照你的例子,假設(shè)做UI的話,我用一個(gè)窗體做UI,其實(shí)要處理的是用另外一個(gè)窗體即刻,不用線程技術(shù)?請(qǐng)老師,指點(diǎn)
- 5 回答
- 0 關(guān)注
- 373 瀏覽
添加回答
舉報(bào)
0/150
提交
取消