dispatch_get_global_queue set flags = 1,崩溃

时间:2017-08-18 02:34:58

标签: grand-central-dispatch exc-bad-access

- (void)viewDidLoad {
    [super viewDidLoad];

    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 1), ^{ 
        [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(listenNotification:) name:@"aysNofitication" object:nil];
    });
}

当我设置标志1时代码会崩溃。

崩溃是:线程1:EXC_BAD_ACCESS(代码= 1,地址= 0x50)

1 个答案:

答案 0 :(得分:1)

正如Sermandurai Subbiah所说,你不应该使用0以外的任何内容作为dispatch_get_global_queue的flags参数。 dispatch_get_global_queue if (Build.VERSION.SDK_INT < 23) { // your code } else { if (ActivityCompat.checkSelfPermission(MainActivity.this, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) { requestContactsPermissions1(); } else { // your code } } 明确警告我们:

  

保留供将来使用的标志。始终为此参数指定0。