我有一个里面有块的块

fun abc(){
 a({
 //some processing
  b({
   //some asynchronous work
    })
  })
}


轻按按钮时,将调用abc方法,该方法通过连接到Internet来完成某些任务,并且需要花费一些时间。我正在寻找取消前一个块并运行两次的当前块的方法。
请建议

最佳答案

没有直接选项可以取消您的阻止。当仅调用一种在块体中设置条件的方式而不执行内部部分时,将执行和块。

如果您尝试使用OperationOperationQueue,则此方法将为您提供灵活的解决方案来管理操作执行并为cancel操作提供机会。

小例子:

   let operationQueue = OperationQueue.main
   let operation = Operation()

   operationQueue.addOperation(operation)

   //Cancel operation that is executing
   operation.cancel()

关于swift - Swift:如何取消代码块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39810571/

10-13 02:37