ReactiveCocoa 异步压缩等处理
来源:互联网 发布:克隆mac地址有什么坏处 编辑:程序博客网 时间:2024/05/29 07:23
代码
- (void) uploadScene:(NSString*)path{ RACSignal *sg; WS(ws); sg = [[RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) { dispatch_async(dispatch_get_global_queue(0, 0),^(void){ [ws zipPath:path]; [subscriber sendNext:@"aa"]; [subscriber sendCompleted]; }); return nil; }] deliverOnMainThread] ; [sg subscribeNext:^(id _Nullable x) { } error:^(NSError * _Nullable error) { }];}- (NSString *) zipPath:(NSString*)path{ //压缩zip文件,压缩文件名 ZipArchive *zip; zip = [[ZipArchive alloc] init]; NSString*createZipPath = [path stringByAppendingPathComponent:@"scene.zip"]; //判断文件是否存在,如果存在则删除文件 NSFileManager * fileManager = [NSFileManager defaultManager]; @try { if([fileManager fileExistsAtPath:createZipPath]) { if(![fileManager removeItemAtPath:createZipPath error:nil]) { } } } @catch(NSException * exception) { } [zip CreateZipFile2:createZipPath]; NSDirectoryEnumerator *dirEnum; NSString *file,*str;; //遍历这个目录的第一种方法:(深度遍历,会递归枚举它的内容) dirEnum = [fileManager enumeratorAtPath:path]; while ((file = [dirEnum nextObject]) != nil) { //如果为zip文件,则跳过,不加入 if([file isEqualToString:@"scene.zip"]) continue; str = [path stringByAppendingPathComponent:file]; [zip addFileToZip:str newname:file]; NSLog(@"%@",str); } [zip CloseZipFile2]; return createZipPath;}
记录下一个异步的栈,有空再补充分析下
__36-[PTLVRSceneSettingsVC uploadScene:]_block_invoke.191 -[RACSubscriber sendNext:] -[RACPassthroughSubscriber sendNext:] __44-[RACSignal(Operations) deliverOnMainThread]_block_invoke_2.839 __44-[RACSignal(Operations) deliverOnMainThread]_block_invoke_3 main __44-[RACSignal(Operations) deliverOnMainThread]_block_invoke_2 __44-[RACSignal(Operations) deliverOnMainThread]_block_invoke.838 -[RACSubscriber sendNext:] -[RACPassthroughSubscriber sendNext:] __36-[PTLVRSceneSettingsVC uploadScene:]_block_invoke_2 __36-[PTLVRSceneSettingsVC uploadScene:]_block_invoke __30-[RACDynamicSignal subscribe:]_block_invoke -[RACSubscriptionScheduler schedule:] -[RACDynamicSignal subscribe:] -[RACSignal(Subscription) subscribeNext:error:completed:] __44-[RACSignal(Operations) deliverOnMainThread]_block_invoke __30-[RACDynamicSignal subscribe:]_block_invoke -[RACSubscriptionScheduler schedule:] -[RACDynamicSignal subscribe:] -[RACSignal(Subscription) subscribeNext:error:] -[PTLVRSceneSettingsVC uploadScene:] __39-[PTLVRSceneSettingsVC saveSceneStory:]_block_invoke
阅读全文
0 0
- ReactiveCocoa 异步压缩等处理
- FileUtil(File处理工具类,copy,压缩,删除等)
- ImageUtil(图片处理工具类,压缩,复制,附件等)
- 处理页面加载图片js(等比例压缩图片)
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- ReactiveCocoa
- 关于硬件和代码的编译链接
- Ubuntu下,Qt编译报错:cannot find -lGL的解决办法。
- ScrollView隐藏滑动条
- Android TextView走马灯效果
- 编译驱动到内核的两种方式
- ReactiveCocoa 异步压缩等处理
- Linux 官网下载地址
- 如何将CSV文件导入到ORACLE
- 博客搬家
- Android常见动画的使用
- 大数据早报:时装设计也用上了人工智能,亚马逊研究出新算法;上海地铁趣味消费数据发布(9.12)
- [论文阅读]Relay Backpropagation for Effective Learning of Deep Convolutional Neural Networks
- Recurrent Neural Networks VS LSTM
- 多对多配置 问题:其他表中都有数据,就是中间表中没有数据