线程优先级
- 线程的优先级(Thread的Priority属性)决定了相对于操作系统中其它活跃线程所占的执行时间。(也就是说这个线程优先级高,那么它就有可能比优先级低的线程执行时间要多一些)
- 优先级分为:
- Enum ThreadPriority
- Lowest
- BelowNormal
- Normal
- AboveNormal
- Highest
- Enum ThreadPriority
提升线程优先级
- 提升线程优先级的时候需特别注意,因为它可能“饿死”其它线程。
如果想仍某线程(Thread)的优先级比其它线程(Process)中的线程(Thread)高,那就必须提升进程(Process)的优先级
- 使用System.Diagnostics下的Process类。
using (Process p = Process.GetCurrentProcess())
{
p.PriorityClass = ProcessPriorityClass.High;
}
- 使用System.Diagnostics下的Process类。
这可以很好地用于只做少量工作且需要较低延迟的非UI进程。
- 对于需要大量计算的应用程序(尤其有UI的应用程序),提高进程的优先级可能会使其它进程饿死,从而降低整个计算机的速度。