Ответ: это зависит!
Ваша операционная система постоянно переключает процессы. В фоновом режиме есть тонны процессов - обновление экрана, размещение звука в динамиках, проверка обновлений, опрос мыши и т. Д. - и эти процессы могут выполняться только на самом деле, если они получают некоторое количество процессорного времени. Если у вас много ядер, ОС будет использовать какую-то эвристику, чтобы выяснить, какие процессы должны получить некоторое время на ядрах. У вас есть иллюзия, что все работает одновременно, потому что (1) в некотором смысле вещи - это, работающие одновременно, потому что у вас несколько ядер, и (2) переключение происходит так быстро, что вы не можете заметить это произошло.
Причина, по которой я делаю это, заключается в том, что если вы одновременно запускаете как Python, так и MATLAB, в то время как в принципе они могут легко запускаться одновременно, не гарантируется, что это происходит, потому что у вас может быть тонна Другие вещи продолжаются. Возможно, что оба Python и MATLAB работают одновременно, а затем временно приостанавливаются, чтобы позволить какой-либо программе, которая воспроизводит музыку, загружать следующий звуковой фрагмент, который будет воспроизводиться в памяти, затем один пауза, пока страницы ОС в некоторой памяти с диска и другой принимает на себя и т. д.
Можете ли вы предположить, что они будут работать параллельно? Конечно! Самые разумные операционные системы оценят это и сделают это правильно. Можете ли вы предположить, что они исключительно работают параллельно и ничего больше? Не обязательно.
большое понимание, спасибо! Так что, в общем, быстрее, если я запускаю обе программы одновременно или жду, пока вы закончите, прежде чем запускать другую? Кроме того, я думал, что если вы хотите использовать многоядерные процессоры, тогда вам нужен особый порядок в вашем коде; иначе многопоточность (переключение между тоннами задачи при скорости освещения) автоматически обеспечивается ОС. Это кажется неправильным? – wudanao
@wudanao ОС автоматически обрабатывает логистику одновременного запуска нескольких программ, поэтому, если у вас есть программа Python и программа MATLAB *, и если каждая из них однопоточная *, то ОС может работать одновременно, а вы Не нужно ничего делать. Запуск обоих в то же время, скорее всего, будет быстрее, чем запуск один за другим. – templatetypedef
отлично, спасибо! – wudanao