1
我正在嘗試爲主Pylons進程中的一些繁重計算創建後臺進程。下面的代碼:從Pylons調用的進程()創建叉
p = Process(target = instance_process, \
args = (instance_tuple.instance, parent_pipe, child_pipe,))
p.start()
過程創建並啓動,但似乎是從主要處理的叉:它聽相同的端口和整個應用程序掛斷。我究竟做錯了什麼?
在此先感謝。
那麼啓動後臺進程的最佳方式是什麼?或者,也許最好開始一個線程?目標是創建一個進程/線程,它將等待傳入的命令並執行相當長時間的繁重計算。 –
Python線程已經退化。 Python解釋器一次只運行一個執行線程,每100個命令(精確地)切換線程並打印會掛起整個進程(請閱讀python [GIL](http://wiki.python.org/moin/) GlobalInterpreterLock))。我不會推薦Python的線程。 對於進程,計算完成後,您應該簡單地使用'p.terminate()'和'p.join()' – immortal
這些計算可以調用大量數據(500-700 Mb),並且不會每次用戶想要使用它時都可以加載它。我使用subprocess.Popen()函數開始一個進程? –