问题标签 [usleep]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 为什么usleep会影响后面的代码性能?
我是性能分析的新手,我的系统出现了性能问题。
代码片段就像
我做了几个测试:一个会评论 usleep 行,另一个不会。
输出结果为:
(处理后的输出显示持续时间和测量此持续时间的次数)
(无睡眠:几乎消耗 11ms)
11 -- 19860
12 -- 139
13 -- 1
(睡眠 30ms,广泛分散)
11 -- 337
12 -- 205
13 -- 391
14 -- 404
15 -- 344
16 -- 133
17 -- 409
18 -- 84
19 -- 279
20 -- 254
21 -- 153
22 -- 669
23 -- 1275
24 -- 1679
25 -- 2609
26 -- 2520
27 -- 594
28 -- 2131
29 -- 1533
30 -- 123
31 -- 1985
32 -- 219
33 -- 431
34 -- 750
35 -- 32
36 -- 337
37 -- 15
38 -- 50
39 -- 20
40 -- 25
41 -- 7
42 -- 2
43 -- 1
究竟是什么原因让“睡眠”对后来者产生如此巨大的影响while (ii--);
?
我该怎么做才能消除/减轻这种影响?
谢谢~
c - unistd.h 的睡眠问题
我想在 c 中为我的程序使用毫秒,但出现错误。基本上我试图在命令之间进行半秒睡眠。
我的代码:
我的错误:
谢谢
c++ - std::this_thread::sleep_for() 与 main() 中的 sleep()
std::this_thread::sleep_for() 或 usleep()
在 main() 中使用什么会更好?这可能很愚蠢,但我是 C++11 特性的新手。
c++ - 通过信号中断睡眠
我想编写一个 C++ 程序,它应该等待一个 linux 信号(毫秒分辨率),但我找不到实现这一点的可能性。
以下测试代码应在 500 毫秒后终止,但事实并非如此。
有人知道如何解决这种行为吗?
c++ - 为什么在while循环中有或没有sleep/usleep的情况下,花费在相同函数/方法调用上的时间差别很大?
我原来的 c++ 演示代码如下所示:
有些人可能会怀疑我对 instance.Search() 的调用会带来一些未知的东西,所以请参考下面的代码:
前置条件:用于perf stat
统计cache_miss、指令等...
案例1:在while循环末尾添加usleep(100)时,处理完成后的结果是:
案例2:添加sleep(1)时,结果为:
案例 3:根本没有 sleep()/usleep(),结果是:
如上所述,相同函数/方法调用的时间成本在不同情况下差异很大。起初,我倾向于认为这sleep()
会导致缓存未命中(我的调用使用的数据)。但是,在我taskset
将我的进程与特定的 cpu 核心绑定后,差异并没有像我预期的那样消失。
我也想知道为什么添加sleep()
/usleep()
会导致instructions
计数的急剧增加perf stat
。
我没有阅读sleep()
or的任何源代码,但我猜想内核可能会在进程调用or (两者都在内部调用)usleep()
时做一些伎俩。sleep()
usleep()
nanosleep()
谁能解释这种奇怪现象背后的原因?提前致谢。
php - 如何仅减慢当前请求的速度?sleep() 没有按预期工作
有时我的应用程序需要等待一些东西。例如,在缓存的情况下:如果在缓存中找不到对象,则脚本在其键下设置一个特殊值,表示当前正在计算其值,并在完成后将其写入。如果在计算时另一个客户端请求相同的对象,则脚本不会重新计算它,而只会等待第一个。当然,这是一个简化的解释。我不知道如何正确地做到这一点,但这种行为在我看来是非常合乎逻辑的。
在测试一个完全不同的东西的过程中,今天我遇到了一个问题。
同时,我在浏览器中的两个选项卡中打开此页面,并希望看到相同的数字,但是……稍后打开的选项卡,除了延迟之外,出于某种原因,正在等待第一个选项卡延迟(蹩脚的措辞,但你理解我),所以我看到这样的东西:1615749037 1615749047
,1615749047 1615749057
。如果您添加更多选项卡,则下一个选项卡将等待所有以前的选项卡。
它打破了我的大脑。这根本不是我想象中的样子,多年来一直处于这种错觉之中。我目前无法找到有关此的任何信息。首先,我对如何达到预期的结果感兴趣。为什么 sleep() 会这样,我似乎开始猜测,但如果你分享一些信息,我会很高兴。谢谢!
升级版。以防万一,我检查了这个:如果我添加header('Cache-Control: no-cache, no-store, must-revalidate')
,那么对我来说没有任何改变。但是如果我从不同的浏览器打开标签,那就没有问题了。
profiling - 为什么我的系统在 1 微秒内采用不同的周期
以下代码给出了 1 微秒延迟的不同周期。这种反应的原因是什么,我怎样才能使它保持一致。任何参考都会有所帮助。
php - 本地主机上的 usleep() VS Repl.it
我目前正在学习 PHP,所以我正在做一些培训,我遇到了一个我不明白的问题。
我在 Repl.it 上写了几行代码:
在这里,代码按预期运行(至少按照我的意愿),即一个字符一个接一个地显示,每个字符之间有几毫秒的延迟。例如,在 RPG 对话框中。
现在我将我的代码导入到 Visual Studio 并在 localhost 上使用 Xampp 运行它,只有在整个循环完成工作后才会显示所有内容。因此,在这种情况下,使用 19 个字符长的“从前……”,它会加载 100.000 毫秒 * 19,然后我会立即显示整个消息。
对我有什么提示吗?:)