美文网首页
Xcode运行报错Message from debugger:

Xcode运行报错Message from debugger:

作者: 玉思盈蝶 | 来源:发表于2022-07-02 20:20 被阅读0次

Xcode运行报错如下:

image.png

问题原因:

原因是for循环四百多次调用一个请求,然后控制台疯狂打印,然后内存爆了,直接闪退了。
因为for循环里面的请求变量多,导致溢出。

解决方法:

队列处理不走并发。上一个请求完成再走下一个请求即可。控制循环里创建变量的数量。

dispatch_async(dispatch_get_global_queue(0,0), ^{
       dispatch_semaphore_t sema = dispatch_semaphore_create(0);
       for (NSInteger i = 0; i < sessionList.count; i++) {
           C2IMSession *session = sessionList[I];
           NSArray *messages = [[C2MessageManager sharedInstance]getMessageList:session.sessionId];
           if (messages.count > 0) {
               continue;
           }
           static NSInteger const PER_PAGE_MAX_MESSAGE_NUMBER = 10;
           [[C2MessageManager sharedInstance] getMessageList:session.sessionId lastMsgTime:0 size:PER_PAGE_MAX_MESSAGE_NUMBER success:^(NSArray<C2IMMessage *> * _Nonnull messageList) {
               dispatch_semaphore_signal(sema);
           } fail:^(C2ReqError * _Nonnull error) {
               dispatch_semaphore_signal(sema);
           }];
           dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);
       }
   });

相关文章

网友评论

      本文标题:Xcode运行报错Message from debugger:

      本文链接:https://www.haomeiwen.com/subject/lhvkbrtx.html