Hi @ipavlov,
"Problem" Scenario: Idle CPU but high RAM and disk IO that is more critical than 7-zip compression/extract/test operation.
Current Behavior: Pressing "Background" reduces CPU priority from Normal to Idle but it still leaves Memory Priority at 5 and Disk IO at 2 (Windows Default).
Desired Behavior: Pressing "Background" would reduce CPU priority to Idle as it does currently but also decrease RAM Priority from 5 to 3 (or 2), Disk IO from 2 to 1 (or 0).
I tested it using this: http://blog.misterfoo.com/2010/07/process-priority-utility.html and he links to his source code it should be possible to decrease RAM and Disk IO priority when you click background and return it to defaults when clicking Foreground.
The reason this is critical is in situations where you have a long running extraction or compression (especially on a server) but with a highly virtualized server with lots of disk IO on spinning disks, having low IO priority allowed it to run without adversely affecting Hyper-V workloads or other critical workloads. Especially in cases where the CPU isn't constrained running in "background" can cause as much disk thrashing or system slowness as Foreground mode since even running at Idle still requests Normal priority for disk IO and RAM.
Note: I only tested this with processPriority.exe compiled so "low" reduced RAM to 3 and Disk IO to 1. I could not test other numbers other than normal 5/2 and 3/1.
Thanks for your consideration.