我需要在 bullmq 中实现启动和停止工作队列功能

问题描述 投票:0回答:1

我需要实现一项功能来使用 bullmq 启动和停止工作队列。

完整的场景是当有人按下前端的开始按钮时。该作业将被添加到工作线程中,队列将启动并处理它。在工作执行过程中,如果有人按下停止按钮。它需要停止或者可以说暂停队列作业。然后是否有人会再次开始这项工作。它应该以相同的队列作业重新开始。

我真的很感激任何帮助,提前致谢。

node.js redis bullmq
1个回答
0
投票

可以使用。

await worker.pause()

上面的调用将等待该工作人员当前正在处理的所有作业完成(或失败)。如果您不想在调用完成之前等待当前作业完成,您可以传递 true 来暂停工作线程,忽略任何正在运行的作业:

await worker.pause(true);

参见文档: https://docs.bullmq.io/guide/workers/pausing-queues

© www.soinside.com 2019 - 2024. All rights reserved.