加入星計(jì)劃,您可以享受以下權(quán)益:

  • 創(chuàng)作內(nèi)容快速變現(xiàn)
  • 行業(yè)影響力擴(kuò)散
  • 作品版權(quán)保護(hù)
  • 300W+ 專業(yè)用戶
  • 1.5W+ 優(yōu)質(zhì)創(chuàng)作者
  • 5000+ 長(zhǎng)期合作伙伴
立即加入
  • 正文
  • 相關(guān)推薦
  • 電子產(chǎn)業(yè)圖譜
申請(qǐng)入駐 產(chǎn)業(yè)圖譜

單線程和多線程的區(qū)別

2021/08/15
1637
閱讀需 2 分鐘
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

硬件型號(hào):聯(lián)想YP9000

系統(tǒng)版本:Windows10

多線程是指程序中包含多個(gè)執(zhí)行流,即在一個(gè)程序中可以同時(shí)運(yùn)行多個(gè)不同的線程來(lái)執(zhí)行不同的任務(wù),也就是說(shuō)允許單個(gè)程序創(chuàng)建多個(gè)并行執(zhí)行。單線程的線程是程序中的一個(gè)執(zhí)行流,每個(gè)線程都有自己的專有寄存器,但代碼區(qū)是共享的,即不同的線程可以執(zhí)行同樣的函數(shù)。

多線程也是程序,所以線程需要占用內(nèi)存,線程越多占用內(nèi)存也越多; 多線程需要協(xié)調(diào)和管理,所以需要CPU時(shí)間跟蹤線程; 線程之間對(duì)共享資源的訪問(wèn)會(huì)相互影響,必須解決競(jìng)用共享資源的問(wèn)題;線程太多會(huì)導(dǎo)致控制太復(fù)雜。多線程運(yùn)行就是一個(gè)進(jìn)程內(nèi)有多個(gè)相對(duì)獨(dú)立的并且實(shí)現(xiàn)特定的任務(wù)以競(jìng)爭(zhēng)CPU的方式執(zhí)行,在多處理機(jī)條件下宏觀上是并發(fā),實(shí)際上是分時(shí)執(zhí)行,只是執(zhí)行的時(shí)間片較短。例如運(yùn)行ppsspp.處理一段圖像數(shù)據(jù),他可以用一個(gè)線程處理這個(gè),而用另一個(gè)線程處理下一段數(shù)據(jù)。相對(duì)單線程而言速度會(huì)有提高。

相關(guān)推薦

電子產(chǎn)業(yè)圖譜