How can I call a CLASS METHOD
on the main thread?
Something like:
[SomeClass performSelectorOnMainThread:staticMethod withObject:nil];
[SomeClass performSelectorOnMainThread:staticMethod withObject:nil waitUntilDone:NO];
Yes, performSelectorOnMainThread:withObject:waitUntilDone:
is not a class method.
Yes, it is an instance method on NSObject
.
Yes, all Class objects are instances of NSObject
. (I'm not kidding!)
You could also do:
dispatch_async(dispatch_get_main_queue(), ^{
[SomeClass doClassyThingWithObject:object1 andDiddleyDoo:foo];
});
How about:
NSInvocationOperation *operation = [[NSInvocationOperation alloc] initWithTarget:[SomeClass class] selector:@selector(SomeClass) object:nil];
[[NSOperationQueue mainQueue] addOperation:operation];