的行爲,我瞭解協程,但它的工作奇怪的是,我無法理解...... 這裏的源奇怪協程
@coroutine
def printer():
tmp=(yield)
print tmp
def sender(coru):
coru.send("hello")
print "I'm sender"
if __name__=="__main__":
coru=printer()
sender(coru)
print "I'm master"
顯示
你好
StopItertationError (「hello」)
while,
@coroutine
def printer():
while 1:
tmp=(yield)
print tmp
def sender(coru):
coru.send("hello")
print "I'm sender"
if __name__=="__main__":
coru=printer()
sender(coru)
print "I'm master"
顯示
你好
我發送
我主
正確。
所以我不知道
爲何總是協程與環工作,爲什麼第一個例子上升錯誤
我heared關於「收益率從」語法在3.3版本。這是否有助於使第一個工作?
我知道每個協程函數的工作原理與子程序不同。
但是,我認爲,在打印機功能結束後,程序應該終止而不返回發件人。
但它確實。這是否意味着發件人優於打印機?子程序和協程之間有什麼區別呢。
感謝您的閱讀,我真的很感激,如果你ENLIGHT我:)
。這只是將func.next()自動化以使協程準備就緒的包裝器 – 2012-08-06 08:44:52