- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
当被要求等待 1 毫秒时,我正在测试各种 win32 API 调用将等待多长时间。我试过了:
:: sleep (1)
::WaitForSingleObject(句柄, 1)
::GetQueuedCompletionStatus(句柄, &bytes, &key, &overlapped, 1)
我使用 QueryPerformanceCounter 和 QueryPerformanceFrequency 检测耗时。大多数情况下,耗时约为 15 毫秒,这在整个 Internet 上都是预期和记录的。然而,在短时间内等待大约需要 2 毫秒!!!它持续发生了几分钟,但现在又回到了 15 毫秒。我没有使用 timeBeginPeriod() 和 timeEndPeriod 调用!然后我在另一台机器上尝试了相同的应用程序,等待时间一直持续约 2 毫秒!两台机器都装有 Windows XP SP2,硬件应该相同。有什么可以解释为什么等待时间相差如此之大的原因吗?时间差
最佳答案
Thread.Sleep(0) 将让任何具有相同优先级的线程执行。 Thread.Sleep(1) 将让任何具有相同或较低优先级的线程执行。
在调度程序让另一个线程执行之前,每个线程都有一个执行时间间隔。正如 Billy ONeal 所说,调用 Thread.Sleep 会将此间隔的剩余时间放弃给其他线程(受上述优先级考虑)。
Windows 在整个操作系统上平衡线程 - 而不仅仅是在您的进程中。这意味着操作系统上的其他线程也可能导致您的线程被抢占(即被中断并将剩余的时间间隔交给另一个线程)。
有一篇关于 Thread.Sleep(x) 主题的文章可能感兴趣:
关于c++ - 有人可以用 Sleep(1) 解释这种有趣的行为吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2638236/
文档:https://www.xfyun.cn/doc/spark/PPTGeneration.html 价格方面提供了免费1000点的额度,生成一次是10点,正好10
我有一个工具按钮和一个分配给它的操作。但该操作没有点击事件,也没有点击代码。因此该按钮被禁用,如何将其更改为启用? 谢谢! 最佳答案 当某个操作没有 OnExecute 处理程序时,该操作始终处于禁用
我有一个 C 程序,它初始化两个结构并尝试打印它们的值。请参阅下面的代码。 #include #include typedef struct node{ int data; struc
我在回答 this question当我想到这个例子时: #include void func(int i); void func(); int main (){ func(); r
这些bug可能够你喝一壶的。 1、被断言(assert)包含的代码 常发生在切换到release版本时,执行结果乖乖的,最终查找结果是assert括号里的代码在release下是不执行的。
我正在谈论一个独立的对象,稍后我想使用 saveOrUpdate() 进行更新。 我们如何同时设置 null 和clear()引用的集合? A[1:1]B[1:M]C B 到 C 的引用可以为空,这意
我最近完成了 Marjin Haverbeke 的书“Eloquent Javascript, Second Edition”中的一项挑战。 One had to create此控制台输出使用 for
我写了一个 HtmlHelper 表达式,我花了很多时间将标题标签放入我的下拉列表中,如下所示: public static HtmlString SelectFor( thi
你知道有哪些开放的软件项目有特别有趣/写得很好的单元测试吗? 编写单元测试对我来说通常感觉很奇怪,因为它似乎太随机、太密集、太稀疏,……阅读一些现实世界的例子(而不是书籍、图书馆示例代码等)会很棒。
我有一个我目前正在使用的 Silverlight 应用程序,它为其 MVVM 框架实现了 Caliburn.Micro。一切正常,但我注意到一些绑定(bind)中的一些有趣之处。我拥有的是处理应用程序
我通过 swscale 运行 png 图像数据以获取 YUV420P 数据,然后使用 MSMPEG4V1 编解码器对该帧进行编码,从而在 iPhone 上对一些视频进行编码。在 api 文档中,avc
我写了一个页面,发现 addEventListener("loadedmetadata",fun) 在 firefox 上运行不正确 我正在尝试修复一个旧软件的错误。在加载视频和页面时,该软件尝试在页
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the
我是一名优秀的程序员,十分优秀!