используя dispatch_sync в качестве блокировки мьютекса
Вот что мне нужно сделать. Я надеюсь, что dispatch_sync будет лучшим способом сделать это с помощью GCD
У меня есть определенный кусок кода критической секции, который помещается в обратный вызов applicationDidBecomeActive в Appdelegate.
Я заключаю этот метод в вызов dispatch_sync, чтобы он вызывался только один раз, независимо от того, сколько раз вызывается applicationDidBecomeActive.
- (void)applicationDidBecomeActive:(UIApplication *)application{
dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
NSLog(@"Thread created");
//crtical code
[self runCriticalSection];
});}
Это правильный способ сделать это с помощью dispatch_sync?