I'm referring to Windows 10 operating system, but I believe the answer might be OS independent.
On windows, the real-time priority level is the highest priority level, use to process keyboard and mouse input for instance.
From what I read online:
Setting a CPU-intensive process to real-time means that the keyboard and the mouse will become unresponsive because the OS won't get enough CPU time to process these inputs.
Basically, a process set to real-time priority will execute without giving the CPU to any other processes, not even the task manager. If something goes wrong, you won't be able to stop it.
See for instance this Microsoft post: When you set a 100% CPU program to real-time priority, you get what you asked for.
Question:
So all this make me afraid to test this level of priority on my machine, which is why I'm asking this question instead of trying it out myself. Also, a theoretical answer seems more future proof than trying with a toy script.
If I run a single-threaded process with real-time priority, I understand that it will execute without stopping until it is finished. But if I have a second core, will I be able to use my PC while this process is running thanks to this second core ?
If yes, this has practical applications. I can run a computational task whose result I need asap on one core while still being able to use my PC with the other core.