3 回答

TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超6個(gè)贊
(1)線程的工作場(chǎng)景主要有兩條:
一個(gè)是并發(fā)操作,避免阻塞和更有效利用資源。典型的例子有:在長(zhǎng)時(shí)間工作的程序中使用工作線程避免界面失去響應(yīng)。在網(wǎng)絡(luò)下載程序中,使用多個(gè)線程提高對(duì)網(wǎng)絡(luò)的使用效率,更快下載文件。
一個(gè)是并行,線程是處理器調(diào)度的最小單位。如果你的計(jì)算機(jī)配置了多個(gè)處理器或者內(nèi)核,那么可以同時(shí)利用多個(gè)處理器同時(shí)計(jì)算,加快問(wèn)題解決的速度。
(2)多線程的工作原理:
對(duì)于單處理器系統(tǒng),操作系統(tǒng)會(huì)輪流調(diào)度每個(gè)線程執(zhí)行一小段時(shí)間,然后切換另一個(gè)線程,在切換的時(shí)候,保存當(dāng)前線程使用的寄存器上下文和堆棧,并且在下次調(diào)度的時(shí)候恢復(fù)。這樣線程中的程序感覺(jué)不到自己被中斷過(guò)。對(duì)于多處理器系統(tǒng),操作系統(tǒng)會(huì)將不同的線程調(diào)度給多個(gè)處理器,讓它們并行執(zhí)行。

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超8個(gè)贊
多線程的程序難以調(diào)試,所以相同的功能,用多線程編寫的難度要大一些,除非有必要,否則不要濫用多線程。
在web中是否使用多線程要根據(jù)情況而定。一般情況下不需要。
添加回答
舉報(bào)