【发布时间】:2013-10-21 08:45:34
【问题描述】:
考虑有一个任务 A 和其他 n 个任务。我想与其他 n 个任务并行运行一个任务 A。任务 A 只是每 5 秒从队列中获取数据。
我是 Node JS 的新手。有什么方法可以在后台运行这个任务/作业 A 或者有什么解决方案吗??
【问题讨论】:
-
是的,当然有。在不知道您要做什么的情况下,不确定如何为您提供更多信息。定义“后台工作”......您的意思是在系统级别,还是在您的应用程序中?
-
实际上在单个 NodeJS 进程中是不可能的,因为 NodeJS 是单线程的,即根本没有并行性。
-
我同意@Brad 的观点,有很多方法可以让事情并行发生,我认为问题中没有足够的信息来提出经过深思熟虑的建议。您会根据任务是本地还是远程、是否相互依赖、是否必须在不同服务器之间进行平衡等采取不同的方法。您要做什么?
-
@freakish 这并不完全准确。您的 JavaScript 只有一个线程,但其他线程用于 IO 等等。不过没关系,没有任何其他信息,就无法知道他要做什么,以及是否需要额外的线程。
-
嗨,这就是我想要做的......我有两种方法,比如 X 和 Y,这两种方法都将一些数据推送到队列中。方法 X 和 Y 被调用 20 次,如 X()、Y()、X()、Y()....等等。在执行这些方法的同时,我想定期从队列中检索数据并对数据执行一些操作。
标签: javascript node.js