Разделение различных частей программы на разные процессы кажется мне более сложным, чем просто прошивать все. В каком сценарии имеет смысл заставить вещи работать в потоке или разделять программу на разные процессы? Когда я должен использовать поток?
Изменить
Все, что (или если) будет действовать по-разному с одноядерным и многоядерным, также будет полезно.