码迷,mamicode.com
首页 > 其他好文 > 详细

Context Switches msdn

时间:2017-11-24 17:59:12      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:sed   mos   follow   with   running   ice   orm   contain   switch   

Context Switches

 https://msdn.microsoft.com/en-us/library/ms682105(VS.85).aspx

The scheduler maintains a queue of executable threads for each priority level. These are known as ready threads. When a processor becomes available, the system performs a context switch. The steps in a context switch are:

  1. Save the context of the thread that just finished executing.
  2. Place the thread that just finished executing at the end of the queue for its priority.
  3. Find the highest priority queue that contains ready threads.
  4. Remove the thread at the head of the queue, load its context, and execute it.

The following classes of threads are not ready threads.

  • Threads created with the CREATE_SUSPENDED flag
  • Threads halted during execution with the SuspendThread or SwitchToThread function
  • Threads waiting for a synchronization object or input.

Until threads that are suspended or blocked become ready to run, the scheduler does not allocate any processor time to them, regardless of their priority.

The most common reasons for a context switch are:

  • The time slice has elapsed.
  • A thread with a higher priority has become ready to run.
  • A running thread needs to wait.

When a running thread needs to wait, it relinquishes the remainder of its time slice.

Context Switches msdn

标签:sed   mos   follow   with   running   ice   orm   contain   switch   

原文地址:http://www.cnblogs.com/feng9exe/p/7891516.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!