博客
关于我
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/

你可能感兴趣的文章
PHP8中match新语句的操作方法
查看>>
PHP:第一章——PHP中常量和预定义常量
查看>>
PHP:第一章——PHP中的位运算
查看>>
phpcms
查看>>
phpcms 2008 product.php pagesize参数代码注射漏洞
查看>>
phpcms V9 自定义添加 全局变量{DIY_PATH}方法
查看>>
Redis五种核心数据结构的基本使用与应用场景
查看>>
Redis五种数据结构简介
查看>>
PHPCMS多文件上传和上传数量限制
查看>>
phpEnv的PHP集成环境
查看>>
PHPExcel一些基本设置总结
查看>>
phpexcel中文手册
查看>>
PHPExcel导入导出 若在thinkPHP3.2中使用(无论实例还是静态调用(如new classname或classname::function)都必须加反斜杠,因3.2就命名空间,如/c...
查看>>
phpMailer发送邮件
查看>>
PHPMailer发送邮件
查看>>
phpmailer发送邮件,可以带附件
查看>>
phpmyadmin 安装
查看>>
phpmyadmin导出数据库出现Fatal error: Cannot 'break' 2 levels in D:\phpstudy\WWW\phpMyAdmin
查看>>
phpmyadmin数据库建表及插入
查看>>
phpnow配置
查看>>