并發(fā)

并發(fā)的作用:

  1. 訪問(wèn)慢速I(mǎi)/O設(shè)備
  2. 人機(jī)交互。(在執(zhí)行一個(gè)任務(wù)的時(shí)候,用戶(hù)依然可以進(jìn)行其他操作)
  3. 服務(wù)多個(gè)網(wǎng)絡(luò)客戶(hù)端
  4. 多核機(jī)器上進(jìn)行并行計(jì)算

并發(fā)的三種方式:

  1. 進(jìn)程
    每個(gè)進(jìn)程有獨(dú)立的虛擬空間,所以要和其他進(jìn)程通信,需使用要通過(guò)進(jìn)程間通信(IPC)機(jī)制。
    優(yōu)點(diǎn):每個(gè)進(jìn)程有獨(dú)立的進(jìn)程空間。
    缺點(diǎn):需使用IPC進(jìn)行通信,開(kāi)銷(xiāo)較大。
  2. I/O多路復(fù)用
  3. 線(xiàn)程
    優(yōu)點(diǎn):共享進(jìn)程的上下文,由內(nèi)核自動(dòng)調(diào)度。

線(xiàn)程內(nèi)存模型:
每個(gè)線(xiàn)程運(yùn)行在一個(gè)進(jìn)程的上下文中,但每個(gè)線(xiàn)程都有自己獨(dú)立的線(xiàn)程上下文,包括:
線(xiàn)程ID,棧,棧指針,程序計(jì)數(shù)器,條件碼,通用目的寄存器值。
寄存器的值是不共享的,而進(jìn)程的內(nèi)存區(qū)域是共享的。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容