這是一個跟進this。 (您不必閱讀所有的答案,只是這個問題)跟帖者:多或者多線程Python的仿真軟件
人向我解釋進程和線程之間的區別。一方面,我希望進程能夠充分利用CPU的所有核心,另一方面,在進程之間傳遞信息並不理想,而且我不想擁有兩個我正在處理的巨大對象的副本用。
所以我一直在想一個辦法做到這一點,結合進程和線程;告訴我這是否合理。我的程序中的主要過程是GUI過程。我會讓它產生一個「渲染管理器」線程。渲染管理器線程將負責渲染模擬,但是,它不會自己渲染它們,但會產生其他進程來完成它的工作。
這些目標:
- 渲染應採取一切可用的核心優勢。
- 的GUI不應該變得遲緩。
我想讓渲染管理器成爲線程的原因是因爲它必須與GUI共享大量信息:即模擬時間線。
那麼你認爲這是一個好的設計?你有什麼改進建議嗎?
更新:
對不起,我的混亂使用單詞 「渲染」 的。通過渲染我的意思是計算模擬,而不是渲染在屏幕上。
重複:http://stackoverflow.com/questions/731993/multiprocessing-or-multithreading – 2009-04-10 14:45:40
這個問題有什麼不同?這是你以前的問題。 – 2009-04-10 14:46:17
這裏我提出了一個結合了線程和進程的特定設計,我想知道它是否好。我已經多次閱讀了上一個問題的所有答案。 – 2009-04-10 15:04:13