_cmd是隐藏的参数,代表当前方法的selector,他和self一样都是每个方法调用时都会传入的参数,动态运行时会提及如何传的这两个参数。
比如这样一个语句。
NSLog(@"%@",NSStringFromSelector(_cmd));
执行这个方法就会输出方法的名称, 这样做是为了跟踪查看方法调用的前后顺序,或者想看看程序到底在那个方法内部崩溃的!
另外,
[self performSelector:_cmd withObject:nil afterDelay:arc4random()%3 + 1];