def start(self):
self.running = True
while self.running:
pass
def shut_down(self):
self.running = False
嗨我想知道一個好方法,同步變量運行。我想有快速的解決方案,但我不知道什麼是更好的信號量,互斥鎖或鎖。我認爲shut_down不常用。可變環路和同步
這是我最好的解決方案,但我認爲我們可以做得更好。
def start(self):
self.__lock__.acquire()
self.running = True
while self.running:
self.__lock__.release()
self.__lock__.acquire()
def shut_down(self):
self.__lock__.acquire()
self.running = False
self.__lock__.release()
我想寫我自己的迷你服務器與多個客戶端。多處理或線程女巫會更好? – Luffy
@Luffy這取決於你最終會等到什麼。如果您的服務器正在運行CPU密集型任務,那麼您將需要執行多處理,因爲它允許Python同時使用多個CPU /內核。另一方面,如果大多數服務器遇到的延遲都與I/O有關(從磁盤讀取文件,通過網絡發送/接收東西),多線程可能已經足夠了。我懷疑多線程的開銷和同步成本較低,但如果您不確定,我會測試各種解決方案。 – Blckknght
好的建議。首先,我會嘗試使用線程。 – Luffy