Seb*_*ski 9 .net windows multithreading
Windows(通常)每秒多少次进行一次线程切换?这与.NET线程不同吗?或者反过来问:允许运行一个线程(例如,正常的线程优先级)多长时间?
Windows上下文切换的频率取决于系统"量子".该量程的范围为10-15毫秒(每秒66-100次),具体取决于操作系统是客户端还是服务器.有关更多细节,我建议阅读Joe Duffy的书" Concurrent Programming on Windows" ; 它详细介绍了这样的事情 - 例如"客户端操作系统......是2个时钟间隔的详细信息......服务器操作系统上的...是12个时钟间隔".此外,他的文章[CLR Inside Out:使用并发性进行扩展] [1]是必读的.
你可以"编辑"量子长度.如果在"系统属性"的"性能选项/高级"中将"调整为最佳性能:"设置为"程序",则可以获得更短的量程.如果将其设置为"后台服务",您将获得更长的量.
如果没有理由进行上下文切换,则线程将获得所需的时间.
[1] http://www.360doc.cn/article/28217_2474333.html