I find that there are a couple of problems with explicitly exiting the stream through .Sleep () or in other ways, when you just make sure that it will not capture the processor. Firstly, it just makes your code bad, as it sprinkles Thread.Sleep (0). You can comment on each instance, but it does not look great.
, , . , script , .
ThreadPriority BelowNormal Lowest. , , , , .
[Thread]::CurrentThread.ThreadPriority = System.Threading.ThreadPriority.Lowest