這兩個代碼似乎都有類似的性能。範圍在這種情況下如何工作?他們中的任何一個都比另一個好嗎?有沒有更好的方法來實現相同的行爲?Python線程範圍
代碼1:
class ex:
b = 6
def foo(self, a):
def fooHandler(a):
while True:
print a
time.sleep(1)
threading.Thread(target=fooHandler, args=(a,)).start()
x = ex()
x.foo(10)
x.foo(100)
x.foo(1000)
代碼2:
class ex:
b = 6
def foo(self, a):
def fooHandler():
while True:
print a
time.sleep(1)
threading.Thread(target=fooHandler).start()
x = ex()
x.foo(10)
x.foo(100)
x.foo(1000)
從我的編輯器複製時,縮進被搞砸了,它應該現在工作 – user3019917
您可能想要閱讀下面的內容:http://stackoverflow.com/questions/4020419/why-arent-python-nested-functions-叫關閉 – dmitri
@dmitri鏈接是有幫助的:)謝謝 – user3019917