问题标签 [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.

0 投票
0 回答
64 浏览

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--);
我该怎么做才能消除/减轻这种影响?

谢谢~

0 投票
0 回答
70 浏览

c - unistd.h 的睡眠问题

我想在 c 中为我的程序使用毫秒,但出现错误。基本上我试图在命令之间进行半秒睡眠。

我的代码:

我的错误:

谢谢

0 投票
1 回答
207 浏览

c++ - std::this_thread::sleep_for() 与 main() 中的 sleep()

std::this_thread::sleep_for() 或 usleep()

在 main() 中使用什么会更好?这可能很愚蠢,但我是 C++11 特性的新手。

0 投票
2 回答
653 浏览

c++ - 通过信号中断睡眠

我想编写一个 C++ 程序,它应该等待一个 linux 信号(毫秒分辨率),但我找不到实现这一点的可能性。

以下测试代码应在 500 毫秒后终止,但事实并非如此。

有人知道如何解决这种行为吗?

0 投票
1 回答
143 浏览

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()

谁能解释这种奇怪现象背后的原因?提前致谢。

0 投票
1 回答
50 浏览

php - 如何仅减慢当前请求的速度?sleep() 没有按预期工作

有时我的应用程序需要等待一些东西。例如,在缓存的情况下:如果在缓存中找不到对象,则脚本在其键下设置一个特殊值,表示当前正在计算其值,并在完成后将其写入。如果在计算时另一个客户端请求相同的对象,则脚本不会重新计算它,而只会等待第一个。当然,这是一个简化的解释。我不知道如何正确地做到这一点,但这种行为在我看来是非常合乎逻辑的。

在测试一个完全不同的东西的过程中,今天我遇到了一个问题。

同时,我在浏览器中的两个选项卡中打开此页面,并希望看到相同的数字,但是……稍后打开的选项卡,除了延迟之外,出于某种原因,正在等待第一个选项卡延迟(蹩脚的措辞,但你理解我),所以我看到这样的东西:1615749037 16157490471615749047 1615749057。如果您添加更多选项卡,则下一个选项卡将等待所有以前的选项卡。

它打破了我的大脑。这根本不是我想象中的样子,多年来一直处于这种错觉之中。我目前无法找到有关此的任何信息。首先,我对如何达到预期的结果感兴趣。为什么 sleep() 会这样,我似乎开始猜测,但如果你分享一些信息,我会很高兴。谢谢!

升级版。以防万一,我检查了这个:如果我添加header('Cache-Control: no-cache, no-store, must-revalidate'),那么对我来说没有任何改变。但是如果我从不同的浏览器打开标签,那就没有问题了。

0 投票
0 回答
21 浏览

profiling - 为什么我的系统在 1 微秒内采用不同的周期

以下代码给出了 1 微秒延迟的不同周期。这种反应的原因是什么,我怎样才能使它保持一致。任何参考都会有所帮助。

0 投票
1 回答
10 浏览

php - 本地主机上的 usleep() VS Repl.it

我目前正在学习 PHP,所以我正在做一些培训,我遇到了一个我不明白的问题。

我在 Repl.it 上写了几行代码:

在这里,代码按预期运行(至少按照我的意愿),即一个字符一个接一个地显示,每个字符之间有几毫秒的延迟。例如,在 RPG 对话框中。

现在我将我的代码导入到 Visual Studio 并在 localhost 上使用 Xampp 运行它,只有在整个循环完成工作后才会显示所有内容。因此,在这种情况下,使用 19 个字符长的“从前……”,它会加载 100.000 毫秒 * 19,然后我会立即显示整个消息。

对我有什么提示吗?:)