1.Block内部执行完才走后续的代码 2.多次请求完成才执行代码
来源:互联网 发布:淘宝客店铺做裂变 编辑:程序博客网 时间:2024/05/15 06:37
1.使用信号量
//先创建一个semaphore dispatch_semaphore_t semaphore = dispatch_semaphore_create(1); __block NSMutableArray *modelArr = [[NSMutableArray alloc]init]; DataBaseTool *tool = [DataBaseTool sharedInstance]; [tool inDatabase:^(FMDatabase *db) { FMResultSet *set = [db executeQuery:@"select * from user_data where redid = ?",redid]; while ([set next]) { UserModel *model = [[UserModel alloc]init]; model.userid = [set stringForColumnIndex:1]; model.redid = [set stringForColumnIndex:2]; model.status = [set doubleForColumnIndex:3]; [modelArr addObject:model]; } [set close]; //发出已完成的信号 dispatch_semaphore_signal(semaphore); }]; //等待执行,不会占用资源 dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER); return modeler;
2.使用dispatch_group
dispatch_group_t downloadGroup = dispatch_group_create();//成对出现 任务开始时dispatch_group_enter(downloadGroup);//成对出现 任务结束时dispatch_group_leave(downloadGroup);dispatch_group_notify(downloadGroup, dispatch_get_main_queue(), ^{ });
0 0
- 1.Block内部执行完才走后续的代码 2.多次请求完成才执行代码
- 等待block完成再执行下一句代码
- 如何等到嵌套的block执行完后再执行其他代码?
- innosetup 安装完成后执行的代码
- 实现 java 执行 cmd 命令,打印输出,等待cmd 完全执行完成后才执行下面代码
- 实现 java 执行 cmd 命令,打印输出,等待cmd 完全执行完成后才执行下面代码 .
- 关于vue.js遇到的坑-发起jquery请求时,应该在请求之前执行的代码被等待到请求完毕后才执行
- Java 内部代码执行顺序
- PHP内部执行JavaScript代码
- 多线程_定时任务的多次执行代码体现
- 多线程-定时任务的多次执行代码体现
- linux 防止进程执行多次 代码
- LotusScript代码执行Http请求
- 别让代码执行不必要的路径和让数据绑定执行了多次
- iOS中设计一个Block代码执行的UIAlertView
- 如何在css加载完毕后,再执行后续代码
- iOS 等待异步线程结束再执行后续代码
- ie9下,console.log不执行后续代码
- tomcat以及微信支付中签名的中文编码问题
- over partition by 用法
- 多态的理解
- C#事务处理(二)之ADO.NET事务
- watchdog ,hang_detect分析
- 1.Block内部执行完才走后续的代码 2.多次请求完成才执行代码
- 【第四课】面向对象编程---构造函数
- 互联网金融事件频发,我们如何保护服务器安全?
- 日期时间
- 转载 仿微信表情与软键盘冲突
- CentOs6.5上快速搭建ftp服务器
- 安装Android虚拟机Genymotion 的那些事
- 百度出品强大的Html5上传控件WebUploader-支持手机端
- FLV文件格式官方规范详解