我有一个小纸牌游戏应用程序。在播放计算机时,一段时间后会触发一些功能来模仿真实的播放器,例如:
RetryListener.this
一切正常,但是当我想取消游戏并开始一个新游戏时,如果我在self.operation.addOperation {
DispatchQueue.main.asyncAfter(deadline: DispatchTime.now()+2) {
self.passTurn()
}
}
函数启动前两秒钟内执行该应用程序,则该应用程序将崩溃。
理想情况下,我希望在不同的操作之间有一些暂停。上述操作在触发延迟功能后立即从队列中释放,因此取消或挂起该操作不起作用。
是否可以将操作保留在队列中两秒钟,然后在完成实际功能后将其释放?
谢谢!