Я имею в виду операционную систему Windows 10, но я считаю, что ответ может быть независимым от ОС.
В Windows уровень приоритета в реальном времени является самым высоким уровнем приоритета, например, для обработки ввода с клавиатуры и мыши.
Из того, что я прочитал в Интернете:
Установка ресурсоемкого процесса в режиме реального времени означает, что клавиатура и мышь перестанут отвечать на запросы, поскольку ОС не получит достаточно времени ЦП для обработки этих входных данных.
По сути, процесс с приоритетом в реальном времени будет выполняться без передачи ЦП другим процессам, даже диспетчеру задач. Если что-то пойдет не так, вы не сможете это остановить.
Посмотрите, например, этот пост Microsoft: когда вы устанавливаете программу на 100% CPU в режиме реального времени, вы получаете то, что просили.
Вопрос:
Поэтому все это заставляет меня бояться проверять этот уровень приоритета на моей машине, поэтому я задаю этот вопрос, а не пробую сам. Кроме того, теоретический ответ кажется более перспективным, чем попытка с игрушечным сценарием.
Если я запускаю однопоточный процесс с приоритетом в реальном времени, я понимаю, что он будет выполняться без остановки до его завершения. Но если у меня будет второе ядро, смогу ли я использовать свой ПК, пока этот процесс работает, благодаря этому второму ядру?
Если да, то это имеет практическое применение. Я могу запустить вычислительную задачу, результат которой мне нужно как можно скорее, на одном ядре, но при этом я могу использовать свой компьютер с другим ядром.