在python中,yield關鍵字可以用於推和上下文中,我知道如何在c#中執行pull上下文,但是如何實現push。我後我試圖從蟒蛇在C#複製代碼:你怎麼能使用C#做協同例程?
def coroutine(func):
def start(*args,**kwargs):
cr = func(*args,**kwargs)
cr.next()
return cr
return start
@coroutine
def grep(pattern):
print "Looking for %s" % pattern
try:
while True:
line = (yield)
if pattern in line:
print line,
except GeneratorExit:
print "Going away. Goodbye"
Eric Lippert在此處有一篇博客文章 – 2010-03-22 15:10:08
考慮使用製表符/空格來更多地對代碼進行格式化。 – Mizipzor 2010-03-22 15:17:31
標籤格式...確實是必要的,而不是時間的問題,是python的問題。 – 2010-03-22 15:38:47