Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/465.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.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
如果花费的时间超过xxx秒,JavaScript将中止任务_Javascript_Multithreading - Fatal编程技术网

如果花费的时间超过xxx秒,JavaScript将中止任务

如果花费的时间超过xxx秒,JavaScript将中止任务,javascript,multithreading,Javascript,Multithreading,我知道JavaScript是一种单线程语言,但我想知道如果长任务的执行时间太长,是否有办法停止它的执行 我正在使用计算器,我使用很多第三方库来执行计算。有时计算可能会花费太长时间,我希望能够超时,停止计算,并显示错误或其他内容 到目前为止,我发现我可以通过WebWorkers实现这一点,但我真的不喜欢使用它们,它们也会带来一些开销 有没有更好的方法来实现这一点?这是否回答了您的问题?否:(不幸的是,所有这些实际上都没有提供一种对函数进行计时的好方法。您在这里定义的“好”是什么?具体地说,为什么这

我知道JavaScript是一种单线程语言,但我想知道如果长任务的执行时间太长,是否有办法停止它的执行

我正在使用计算器,我使用很多第三方库来执行计算。有时计算可能会花费太长时间,我希望能够超时,停止计算,并显示错误或其他内容

到目前为止,我发现我可以通过WebWorkers实现这一点,但我真的不喜欢使用它们,它们也会带来一些开销


有没有更好的方法来实现这一点?

这是否回答了您的问题?否:(不幸的是,所有这些实际上都没有提供一种对函数进行计时的好方法。您在这里定义的“好”是什么?具体地说,为什么这些答案对您不起作用?例如,我尝试了一个有一个while循环的函数,循环10秒,除了worker的解决方案之外(我已经知道这一点,我正在努力避免使用它),其余的解决方案无法终止该函数。