//延迟执行
[self performSelector:@selector(hidenSelf) withObject:nil afterDelay:2];
//取消延迟执行
[[self class] cancelPreviousPerformRequestsWithTarget:self selector:@selector(hidenSelf) object:nil];
访问官网:https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/Reference/Reference.html
Sending Messages
– performSelector:withObject:afterDelay:
– performSelector:withObject:afterDelay:inModes:
– performSelectorOnMainThread:withObject:waitUntilDone:
– performSelectorOnMainThread:withObject:waitUntilDone:modes:
– performSelector:onThread:withObject:waitUntilDone:
– performSelector:onThread:withObject:waitUntilDone:modes:
– performSelectorInBackground:withObject:
+ cancelPreviousPerformRequestsWithTarget:
+ cancelPreviousPerformRequestsWithTarget:selector:object:
下面给出一个例子:
- (IBAction)Start:(id)sender {
[self performSelector:@selector(doSomething:)];
//[self doSomething:nil];
//[self per
[self performSelectorInBackground:@selector(doSomething:) withObject:nil];
}
-(void)doSomething:(id)inputData
{
if([NSThread isMainThread])
{
NSLog(@"in main thread");
}
else {
NSLog(@"not in main thread");
}
NSLog(@"kkkkk");
}