今天看啥  ›  专栏  ›  小鹿学Java

闲鱼面试:Thread.sleep(0) 到底有什么用?

小鹿学Java  · 公众号  ·  · 2025-08-11 14:30
    

主要观点总结

文章介绍了Thread.Sleep函数的原理和作用,包括其在操作系统中的上下文和在抢占式操作系统中的行为特点。通过类比和分蛋糕的场景生动解释了函数的工作方式及相关概念如时间片算法和优先级竞争。

关键观点总结

关键观点1: Thread.Sleep函数的作用

Thread.Sleep函数用于告诉操作系统在未来的指定毫秒内,当前线程不参与CPU竞争。

关键观点2: Thread.Sleep(0)的特点

Thread.Sleep(0)的作用是触发操作系统立刻重新进行一次CPU竞争。即使当前线程优先级很高,也可能因为其他线程的优先级提升而失去CPU控制权。

关键观点3: 操作系统中的CPU竞争策略

操作系统根据进程的优先级和饥饿时间计算总优先级,将CPU交给总优先级最高的进程。抢占式操作系统假设进程会主动退出CPU。

关键观点4: Thread.Sleep在循环中的应用

在大循环中使用Thread.Sleep(0)可以给其他线程如Paint线程获得CPU控制权的权力,避免界面假死。


免责声明:本文内容摘要由平台算法生成,仅为信息导航参考,不代表原文立场或观点。 原文内容版权归原作者所有,如您为原作者并希望删除该摘要或链接,请通过 【版权申诉通道】联系我们处理。

原文地址: 访问原文地址
总结与预览地址:访问文章预览/总结
文章地址: 访问文章快照