PCL
|
Thread scheduling priorities. More...
ThreadPriority::Inherit | Inherit the caller's thread priority. This is the default value. |
ThreadPriority::Idle | Schedule when no other threads are busy. |
ThreadPriority::Lowest | Schedule more often than idle priority, but less than low priority. |
ThreadPriority::Low | Schedule more often than lowest priority, but less than normal priority. |
ThreadPriority::Normal | Standard thread priority. |
ThreadPriority::High | Schedule more often than normal priority, but less than highest priority. |
ThreadPriority::Highest | Schedule more often than high priority, but less than time-critical priority. |
ThreadPriority::TimeCritical | Schedule as often as possible, taking precedence over any other threads. |
ThreadPriority::DefaultMax | Default maximum priority. This is a platform-dependent, maximum thread priority recommended for processing modules. |
Note that not all platforms and operating systems handle thread scheduling priorities in the same way. In general, modules should use the default maximum thread priority by specifying ThreadPriority::DefaultMax instead of hard-coded priority values. Time-critical priority should be reserved for performance-critical, very brief and fast tasks exclusively, and should only be used when it is really necessary. This is particularly important on Windows platforms.