setTimeout如何在Node.JS中工作?
|
我猜想它一旦执行就在队列中,但是在队列中有没有保证它会在X毫秒后准确调用?还是队列中其他较高任务会延迟它?
没有找到相关结果
已邀请:
5 个回复
拭十年
这里的流程是: 安排100ms的超时时间。 繁忙等待5000毫秒。 返回事件循环。检查未决的计时器并执行。 如果不是这种情况,那么您可以使用另一种JavaScript \“ interrupt \”。我们必须设置互斥体和信号量等,以防止此类代码极难推理:
Node \的JavaScript执行的单线程性使其比大多数其他并发样式更容易使用。当然,要权衡的是程序行为不当的部分可能会无限循环地阻塞整个过程。 这比抢占的复杂性更好吗?那要看。
脾萌
除非解释器优化了循环(在chrome上没有),否则您将获得成千上万的东西。卸下环,您会在鼻子上看到500。
剑哎
抢垢洛韧
至少在t毫秒后用于运行回调。实际延迟取决于许多外部因素,例如OS计时器粒度和系统负载。 因此,有可能在设置的时间之后稍稍调用它,但永远不会在之前调用它。 计时器的时间不能超过24.8天。
豹芜澈
是一种线程,它在给定的时间内保存一个操作并执行。
在这里,第一个参数应该是函数类型;例如,如果您想在3秒钟后打印您的姓名,则您的代码应如下所示。
要记住的关键是,无论您想使用
方法做什么,都可以在函数内完成。如果要通过解析一些参数来调用其他方法,则代码应如下所示: