我正在使用 swift 进行后端开发。我已经在服务器上安排了某些任务,如下例所示
let queue = DispatchQueue(label: "com.sample.dispatchQueue")
queue.asyncAfter(deadline:.now()+300.0, execute: workItem)
如果服务器进程在任务执行前崩溃了,调度到调度队列的任务还会执行吗?
最佳答案
也许你认为 DispatchQueue 是运行在单独进程中的中间件。 DispatchQueue 与您的应用程序的其余部分在同一进程中运行,因此如果您的服务器进程崩溃,它也会随之崩溃。要解决这个问题,您可能想要构建自己的在单独进程中运行的队列(并且可能使用共享后端进行排队/消息传递)或使用像 SwiftQ 这样的包。
关于swift - 服务器端 Swift - 调度队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44798984/