美文网首页
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