第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

php 的yield叫協(xié)程,go的goroutine也叫協(xié)程,它這兩種完全不一樣吧?

php 的yield叫協(xié)程,go的goroutine也叫協(xié)程,它這兩種完全不一樣吧?

PHP
人到中年有點(diǎn)甜 2019-03-14 20:35:25
php那個(gè)我是沒(méi)搞懂,而且是會(huì)暫停的。go那個(gè)呢,并不需要暫停,我就是類似另開(kāi)一個(gè)線程,做完了事,返回?cái)?shù)據(jù),就閃人,這個(gè)還更好理解。PHP那個(gè)有點(diǎn)搞不懂。
查看完整描述

1 回答

?
大話西游666

TA貢獻(xiàn)1817條經(jīng)驗(yàn) 獲得超14個(gè)贊

php等語(yǔ)言里的yield,不是協(xié)程語(yǔ)法,而是迭代器語(yǔ)法。
而包括php在內(nèi)的大多數(shù)語(yǔ)言實(shí)現(xiàn)迭代器的方式,是通過(guò)一個(gè)可中斷的函數(shù)完成的。

協(xié)程的一個(gè)特點(diǎn)就是執(zhí)行中斷,切換上下文。

所以就有了通過(guò)迭代器函數(shù)去實(shí)現(xiàn)協(xié)程的方案。這種方案充分利用了迭代器可中斷的特點(diǎn)來(lái)模擬協(xié)程中斷,而利用閉包函數(shù)的上下文獨(dú)立性,實(shí)現(xiàn)協(xié)程的上下文切換。

總結(jié)起來(lái),什么是協(xié)程,協(xié)程是通過(guò)切換運(yùn)行方法和上下文,來(lái)在同一個(gè)空間中完成不同的處理任務(wù)(注意,不是另外開(kāi)線程)。
那么協(xié)程怎么實(shí)現(xiàn),goroutine就是協(xié)程的一種實(shí)現(xiàn)方式。
而通過(guò)迭代器實(shí)現(xiàn)協(xié)程,就又是另外一種方式。
兩者的區(qū)別在于,goroutine是已經(jīng)存在的實(shí)現(xiàn)。相當(dāng)于已經(jīng)成品的車,你理解起來(lái)會(huì)相當(dāng)容易。
迭代器只是提供者實(shí)現(xiàn)協(xié)程的方法,具體要實(shí)現(xiàn)協(xié)程,還需要自己去寫代碼完成。這就好像是汽車的零件,你需要自己組裝,所以還需要深入學(xué)習(xí)你才能理解它的原理

查看完整回答
1 反對(duì) 回復(fù) 2019-03-18
  • 1 回答
  • 0 關(guān)注
  • 580 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)