Erlang 长生不老药/二郎-纳米睡眠
那里有长生不老药/二郎的纳米睡眠吗?Erlang 长生不老药/二郎-纳米睡眠,erlang,elixir,sleep,nano,Erlang,Elixir,Sleep,Nano,那里有长生不老药/二郎的纳米睡眠吗? Erlangs定时器。睡眠“只”需要几毫秒,我正在寻找比这更短的睡眠时间。我最终做了如下事情: defmodule TimeCheck do def time_ok(time) do if :erlang.system_time - time < 10000 do TimeCheck.time_ok(time) else true end end end defmodule TimeCheck
Erlangs
定时器。睡眠“只”需要几毫秒,我正在寻找比这更短的睡眠时间。我最终做了如下事情:
defmodule TimeCheck do
def time_ok(time) do
if :erlang.system_time - time < 10000 do
TimeCheck.time_ok(time)
else
true
end
end
end
defmodule TimeCheck do
def time_ok(时间)do
if:erlang.system_time-time<10000 do
时间检查。时间\确定(时间)
其他的
真的
结束
结束
结束
我最终做了这样的事情:
defmodule TimeCheck do
def time_ok(time) do
if :erlang.system_time - time < 10000 do
TimeCheck.time_ok(time)
else
true
end
end
end
defmodule TimeCheck do
def time_ok(时间)do
if:erlang.system_time-time<10000 do
时间检查。时间\确定(时间)
其他的
真的
结束
结束
结束
2007年,至少没有这样的情况。这里提出的解决方案是“忙碌等待”,即在循环中不断检查时间,直到你想睡觉的时间过去。这篇文章的作者最终提出了繁忙等待的解决方案。你想睡眠大约多少纳秒?如果它很小,忙碌的等待可能就足够了。需要考虑的是:睡眠时间到底需要多长?我想Erlang的先发制人调度器可能会在你的方向盘上放一个辐条。如果你运气不好,调度器可能会在繁忙的等待循环中间中断进程,而你最终会睡得比你希望的长得多。根据您的使用情况,这可能不是一个问题。@PatrickOscity所说的-Erlang的软实时架构可能只在尝试计时时保证毫秒级的少量精度。我们可以帮助更多,如果你陈述你的用例-除非你正在做非常低的水平(设备驱动)的工作,你应该考虑在C开始,睡眠是皱眉在Erlang世界从我所读。据报道,没有任何这样的,至少在2007。这里提出的解决方案是“忙碌等待”,即在循环中不断检查时间,直到你想睡觉的时间过去。这篇文章的作者最终提出了繁忙等待的解决方案。你想睡眠大约多少纳秒?如果它很小,忙碌的等待可能就足够了。需要考虑的是:睡眠时间到底需要多长?我想Erlang的先发制人调度器可能会在你的方向盘上放一个辐条。如果你运气不好,调度器可能会在繁忙的等待循环中间中断进程,而你最终会睡得比你希望的长得多。根据您的使用情况,这可能不是一个问题。@PatrickOscity所说的-Erlang的软实时架构可能只在尝试计时时保证毫秒级的少量精度。如果你陈述你的用例,我们可能会有更多的帮助——除非你做的是非常低的水平(设备驱动)工作,你应该在C开始考虑这样做,从我读到的内容来看,Erlang世界中的睡眠是皱眉的。