Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript setTimeout()替代示例_Javascript_Settimeout - Fatal编程技术网

Javascript setTimeout()替代示例

Javascript setTimeout()替代示例,javascript,settimeout,Javascript,Settimeout,我最近读到了setTimeout()和setInterval()是如何不可靠的 堆栈溢出的许多人都有这个问题,但没有给出多少通用示例,尤其不是专门针对setTimeout() 我需要的是: 将以尽可能精确的方式执行doSomething()的超时 即,alternativeTimeout(doSomething,1500) 谢谢,如果您有任何问题,请发表评论 *大多数读到这篇文章的人都会认为这是重复的,但是通过我搜索的答案,没有一个像我所要求的那样的例子。有一个图书馆可以满足这个确切的需求。它名

我最近读到了
setTimeout()
setInterval()
是如何不可靠的

堆栈溢出的许多人都有这个问题,但没有给出多少通用示例,尤其不是专门针对
setTimeout()

我需要的是:

将以尽可能精确的方式执行doSomething()的超时

即,
alternativeTimeout(doSomething,1500)

谢谢,如果您有任何问题,请发表评论


*大多数读到这篇文章的人都会认为这是重复的,但是通过我搜索的答案,没有一个像我所要求的那样的例子。

有一个图书馆可以满足这个确切的需求。它名为later.js,可用于客户端和服务器端。它基本上是一个围绕setTimeout的高级包装器,具有类似cron的调度。以下是从项目现场拍摄的照片:

function test() {
  console.log(new Date());
}

var sched = later.parse.recur().every(5).minute(),
t = later.setTimeout(test, sched);

什么是你的“可靠性”?在非实时环境中,您无法保证何时处理某些事情。“谢谢你,如果你有任何问题,请发表评论!”——你真的有问题吗?:-S@zerkms我的意思是它将以1500毫秒的速度执行这在非实时操作系统中是不可能的。一个进程在任何时候都可以被抢占,所以运行时不能保证任何东西。@zerkms有什么东西可以至少让时间更接近我想要的,而不是改变太多?在工程中,“尽可能多”不是一个可测量的单位
setTimeout
是您最好的选择,接受它。这不会延迟吗?