Определить, вызывается ли метод в фоновом режиме / на переднем плане
Я хотел бы определить, вызван ли метод из цели c и выполняется ли он на NSThread
это работает на переднем плане или фоне.
Спасибо
2 ответа
Решение
Вы можете проверить, является ли текущий поток основным с помощью:
+ (BOOL)[NSThread isMainThread]
(void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
//this thread called method in background thread
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,
(unsigned long)NULL), ^(void) {
[self callBackMethod];
});
//this method call work with main thread
[self callBackMethod];
}
-(void)callBackMethod
{
if ([NSThread isMainThread]) {
NSLog(@"main thread....");
}else
{
NSLog(@"background thread..");
}
}