博客
关于我
GCD学习之dispatch_suspend/dispatch_resume
阅读量:739 次
发布时间:2019-03-22

本文共 399 字,大约阅读时间需要 1 分钟。

dispatch_suspend/dispatch_resume

dispatch_suspend和dispatch_resume

当Dispatch Queue中处理任务数量过多时,有时可能需要暂停已添加到队列中的任务运行。这种情况通常发生在关键任务被阻止(比如被异常捕获)时。

与之对应的解决方案就是挂起Dispatch Queue。当恢复时,这些被暂停的任务就会继续执行。

具体操作方式如下。

dispatch_suspend(queue);

功能恢复

dispatch_resume(queue);

需要注意的是,这些函数不会影响已经在执行中的任务。当使用dispatch_suspend时,尚未处理的新任务会立即停止。dispatch_resume则会让这些被暂停的任务恢复执行。

GCD工具集中的这两个函数非常实用,能够帮助开发者在关键任务被中断时,通过简单的方式控制队列任务执行流程。

转载地址:http://kmggz.baihongyu.com/

你可能感兴趣的文章
ORA-01207:文件比控制文件更新 - 旧的控制文件
查看>>
ORA-01795: 列表中的最大表达式数为 1000
查看>>
ORA-06575: 程序包或函数 NO_VM_DROP_PROC 处于无效状态
查看>>
ORA-08102的错误
查看>>
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor异常
查看>>
ORA-12514: TNS:listener does not currently know of service问题原因
查看>>
ora-12541:tns:no listener
查看>>
【docker知识】联合文件系统(unionFS)原理
查看>>
ORACEL学习--理解over()函数
查看>>
ORAchk-数据库健康检查
查看>>
oracle 10g crs命令,Oracle 10g CRS安装问题解决一例
查看>>
Oracle 10g ORA-01034: ORACLE not available 错误
查看>>
oracle 10g的安装配置
查看>>
Oracle 11.2.0.4 x64 RAC修改public/private/vip/scan地址
查看>>
Oracle 11G INDEX FULL SCAN 和 INDEX FAST FULL SCAN 对比分析
查看>>
viewpage listview gridview加载本地大图多图OOM处理办法
查看>>
Oracle 11g UNDO表空间备份增强
查看>>
Oracle 11g 使用RMAN备份数据库
查看>>
Oracle 11g 单实例安装文档
查看>>
Oracle 11g 操作ASM权限问题
查看>>