亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

同步會啟動新的線程嗎

同步會啟動新的線程嗎

慕標5832272 2018-09-12 08:06:27
相信大家都知道有同步和異步兩種調用方式.區別我就不多說了,只想請教一下: 同步調用的時候(比方說invoke),此時,主程序的線程會處于阻塞狀態,等待被調用方完成后,才可以繼續執行。但此時,主線程既然都阻塞了,是不是應該有個新的線程去執行被調用方的操作呢?好多都說,異步才會在線程池里啟動一個新的線程,同步不會,使用相同線程??墒遣粫脑挘@個線程已經阻塞了,還怎么繼續使用呢?
查看完整描述

2 回答

?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

不會。阻塞是指調用方必須等待被調用返回后才能繼續執行下一條指令。

你應該把線程想象成生產流水線,流水線本身是不能執行操作的,它只是預設了一定數量的加工點,OS會驅動流水線前進,同步調用即是加工點必須在流水線上完成,那么沒有完成之前,這條流水線是停滯的,它無法前進到下一個加工點;異步調用即是加工點只是標記該工序應該在另一條生產流水線上完成,當前的流水線可以繼續前進到下一個加工點,而不用等待另一條流水線上的加工完成。


查看完整回答
反對 回復 2018-09-16
?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

同學,這個是操作系統級別的問題,操作系統已經處理了該功能。在同步完成后,會有個回調函數來激活主線程的運行。。。

查看完整回答
反對 回復 2018-09-16
  • 2 回答
  • 0 關注
  • 446 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號