HarmonyOS 鸿蒙Next Taskpool.execute 执行死循环任务console.log输出到控制台字符串超过3分钟 还能输出东西

发布于 1周前 作者 h691938207 来自 鸿蒙OS

HarmonyOS 鸿蒙Next Taskpool.execute 执行死循环任务console.log输出到控制台字符串超过3分钟 还能输出东西

taskTool 执行超过三分钟,还没有终止任务

cke_524.png

cke_880.png

cke_1548.png

cke_2088.png



关于HarmonyOS 鸿蒙Next Taskpool.execute 执行死循环任务console.log输出到控制台字符串超过3分钟 还能输出东西的问题,您也可以访问:https://www.itying.com/category-93-b0.html 联系官网客服。

2 回复

你好,鸿蒙开发者同僚

首先,我们需要了解TaskPool是一个任务池,它将创建好的任务组放入taskpool内部的任务队列中。这些任务不会立即执行,而是等待被分配到工作线程中去执行。只有当任务组中的所有任务都执行完毕后,结果数组才会统一返回。

而,你传入的任务执行的是一个死循环,这意味着一旦任务被分配到工作线程,它将持续执行。因此,请务必注意循环的业务条件,以避免出现无限循环的情况。

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/taskpool-introduction-0000001820879741#ZH-CN_TOPIC_0000001857875821__taskpool%E6%B3%A8%E6%84%8F%E4%BA%8B%E9%A1%B9h±/$%-+有道理,但是我在任务池的文档注意事项中看到,说工作线程执行耗时不能超过3分钟,超过了就会被强制退出,不包含Promise和async/await异步调用的耗时,例如网络下载、文件读写等I/O任务的耗时,我这既不是异步调用,也是不I/O耗时任务,按照文档所说应该会在三分钟结束啊

回到顶部