это продолжение до это . (Вам не нужно читать все ответы, только вопрос)
Люди объяснили мне разницу между процессами и потоками. С одной стороны, я хотел, чтобы процессы могли полностью использовать все ядро ЦП, с другой стороны, передача информации между процессами была не идеальной, и я не хотел иметь две копии огромного объекта, с которым я имел дело. с.
Так что я думал о способе сделать это, комбинируя процессы и потоки; скажи мне, если это имеет смысл. Основным процессом в моей программе является процесс с графическим интерфейсом. У меня будет поток "менеджер рендеринга". Поток менеджера рендеринга будет отвечать за рендеринг симуляции, однако он не будет рендерить их сам по себе, а порождает другие процессы, выполняющие за него работу.
Это цели:
- Рендеринг должен использовать все доступные ядра.
- GUI никогда не должен становиться вялым.
Причина, по которой я хочу, чтобы менеджер рендеринга был потоком, заключается в том, что он должен делиться большим количеством информации с графическим интерфейсом: а именно, временной шкалой моделирования.
Так вы думаете, это хороший дизайн? У вас есть предложения по улучшению?
Обновление:
Извините за мое запутанное использование слова "рендер". Под рендерингом я имею в виду вычисление симуляции, а не рендеринг на экране.