我嘗試了很多搜索,但並不真正知道如何將我的問題提出來,所以可能有一個解決方案,我找不到,因爲我不知道如何搜索它。在代碼中運行新代碼的代碼而不是指定目標函數來運行
我有一行代碼,我想運行在一個單獨的線程。到目前爲止,我的印象中,以創建具有啓動線程時使用target
參數把你想自己的函數內部運行,然後將代碼中調用該函數一個新的線程:
threading.Thread(target = functionName).start()
這是好的我的工作是這樣的,但是因爲我只運行一行代碼,在它自己的函數中看起來有點沒有意義,我想擺脫這一點。我想創建線程並有效地指定實際的代碼行本身,而不是函數名稱target
。
我可以在C#這樣做:
new Thread(delegate()
{
// any amount of code goes here and it will be run in its own thread
}).Start();
但有什麼辦法,我可以在Python這樣做呢?
所以,你可以使用'lambda'。 – Daniel
@Daniel,不能在lambda表達式中放置任何數量的代碼。沒有循環,有限的控制流程等等。 – ForceBru
@ForceBru:但是OP提到了一行代碼,所以也許lambda足夠了。 – Daniel