我發現了tutorial about using multithreading in Python並查看了documentation。限制每個線程的Python容量
雖然這些例子有效,但有些問題出現了。
在JavaScript中,一個無限循環一樣
while (true) {
console.log("I'm trapped in an infinite loop!"); // JavaScript nearly crashes.
}
打破我的瀏覽器執行,我只能通過終止進程逃脫。但是,在Python中,無限循環正常工作。我可以隨時停止它。這甚至結合其他線程:
我認爲一個無限循環將是所有最耗盡的任務。如果這是正確的,那就意味着Python會處理耗盡線程,以便其他線程不會停止。
這是我的問題:Python如何爲其底層線程分配容量?
try:
# How much capacity will thread 1 get?
thread.start_new_thread(very_exhausting_task, ("Thread-1",))
# How much capacity will thread 2 get?
thread.start_new_thread(another_very_exhausting_task, ("Thread-2",))
except:
print "Error: unable to start thread"
while 1:
pass
您需要闡明「如何控制容量?」網站格式支持每個帖子單個問題。因此,提出多個問題 - 每個問題都可以有不同的答案,而且誰的回答專業知識可能來自不同的用戶,應該分成多個問題 - 每個問題都側重於各自的部分。您的問題似乎主要是基於意見的,引起討論和辯論的有見地的答案也不適合本網站。我建議你做一些獨立的研究並返回一個堅實的問題。或者來到[Python聊天](http://chat.stackoverflow.com/rooms/6/python) –
您似乎缺少對線程和調度概念的基本理解。閱讀http://en.wikipedia.org/wiki/Scheduling_%28computing%29即可開始使用;但要深入回答這個問題,需要一本關於操作系統和日程安排的好書或論文。你的問題是如何分配容量沒有多大意義 - python解釋器給線程一些CPU時間,並在中斷時突然釋放;這是重複的,除非線程結束。 – l4mpi
感謝您的評論。我刪除了不必要的問題,並專注於我的主要問題。 – Xiphias