Difference between revisions of "SetPriorityClass"

From Lazarus wiki
Jump to navigationJump to search
(SetPriorityClass - a function that sets the priority class for a specified process.)
(SetPriorityClass - a function that sets the priority class for a specified process.)
Line 4: Line 4:
 
The SetPriorityClass may have one of the following priority classes:
 
The SetPriorityClass may have one of the following priority classes:
  
HIGH_PRIORITY_CLASS <= High performs tasks immediately.<br>
+
* HIGH_PRIORITY_CLASS <= High performs tasks immediately.<br>
IDLE_PRIORITY_CLASS <= Idle performs tasks when the system is idle.<br>
+
* IDLE_PRIORITY_CLASS <= Idle performs tasks when the system is idle.<br>
NORMAL_PRIORITY_CLASS <= Normal performs tasks at regular speed.<br>
+
* NORMAL_PRIORITY_CLASS <= Normal performs tasks at regular speed.<br>
REALTIME_PRIORITY_CLASS <= Real Time performs tasks immediately and above all other tasks, including operating system tasks.<br><br>
+
* REALTIME_PRIORITY_CLASS <= Real Time performs tasks immediately and above all other tasks, including operating system tasks.<br>
  
 
Use caution when using REALTIME_PRIORITY_CLASS.  It can potentially take so
 
Use caution when using REALTIME_PRIORITY_CLASS.  It can potentially take so

Revision as of 08:55, 25 July 2010

SetPriorityClass - a function that sets the priority class for a specified process. This function is specific to Windows.


The SetPriorityClass may have one of the following priority classes:

  • HIGH_PRIORITY_CLASS <= High performs tasks immediately.
  • IDLE_PRIORITY_CLASS <= Idle performs tasks when the system is idle.
  • NORMAL_PRIORITY_CLASS <= Normal performs tasks at regular speed.
  • REALTIME_PRIORITY_CLASS <= Real Time performs tasks immediately and above all other tasks, including operating system tasks.

Use caution when using REALTIME_PRIORITY_CLASS. It can potentially take so much of the CPU resources that there may not be anything left for other items to run, including operating system requests.


EXAMPLE:

<delphi> uses Windows; // Unit containing the SetPriorityClass function.

procedure TForm1.FormCreate(Sender: TObject); begin

    SetPriorityClass(GetCurrentProcess(), HIGH_PRIORITY_CLASS);
    // Sets the current running application to High Priority.

end;

</delphi>