美文网首页周周阅读目录
EXC_BAD_ACCESS(code=2,address=0x

EXC_BAD_ACCESS(code=2,address=0x

作者: 诗仙丶李白 | 来源:发表于2017-01-23 10:18 被阅读1096次

    一般都是没有在主线程进行UI界面刷新造成的。

    建议界面刷新放到主线程:

    1、dispatch_async主线程操作:

    dispatch_async(dispatch_get_main_queue(), ^{

    //更新UI操作

    //.....

    });

    2、dispatch_async函数是异步操作:

    dispatch_async(dispatch_get_global_queue(0, 0), ^{

    // 处理耗时操作的代码块...

    //通知主线程刷新

    dispatch_async(dispatch_get_main_queue(), ^{

    //回调或者说是通知主线程刷新});

    });

    3、performSelectorOnMainThread:

    -(void)setupThread:(NSArray*)userInfor{

    [NSThread detachNewThreadSelector:@selector(threadFunc:) toTarget:self withObject:(id)userInfor];

    }

    - (void)threadFunc:(id)userInfor{

    NSAutoreleasePool*pool = [[NSAutoreleasePool alloc] init];

    //。。。。需要做的处理。

    //这里线程结束后立即返回

    [self performSelectorOnMainThread:@selector(endThread) withObject:nil waitUntilDone:NO];

    [pool release];

    }

    相关文章

      网友评论

        本文标题:EXC_BAD_ACCESS(code=2,address=0x

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