это продолжение до this. (Вам не обязательно читать все ответы, только вопрос)Последующее наблюдение: многопроцессорность или многопоточность для программного обеспечения для моделирования Python
Люди объясняли мне разницу между процессами и потоками. С одной стороны, мне нужны процессы, чтобы я мог полностью использовать все ядро процессора, с другой стороны, передача информации между процессами была менее идеальной, и я не хотел иметь две копии огромного объекта, с которым я работал с.
Так что я думал о способе сделать это, объединяя процессы и потоки; скажите мне, если это имеет смысл. Основным процессом в моей программе является процесс графического интерфейса. Я попрошу его создать поток «рендеринг-менеджер». Поток рендеринга-менеджера будет отвечать за рендеринг имитации, однако он не будет отображать их сам по себе, а порождает другие процессы, чтобы сделать для него работу.
Эти цели:
- Rendering должны воспользоваться всеми доступными ядрами.
- GUI никогда не должен становиться вялым.
Причина, по которой я хочу, чтобы рендеринг-менеджер был потоком, состоит в том, что он должен делиться большой информацией с графическим интерфейсом: а именно, симуляционная шкала времени.
Как вы думаете, это хороший дизайн? Есть ли у вас предложения по улучшению?
Update:
Извините за мой запутанным использование слова "визуализации". Посредством рендеринга я имею в виду вычислить симуляцию, а не отображать ее на экране.
Duplicate: http://stackoverflow.com/questions/731993/multiprocessing-or-multithreading –
Что на самом деле отличается от этого вопроса? Это ваш предыдущий вопрос снова и снова. –
Здесь я предложил определенный дизайн, сочетающий потоки и процессы, и я хочу знать, хорошо ли это. Несколько раз я читал ответы на предыдущий вопрос. –