- (void)fireTimer{
if (!self.target) {
[self.timer invalidate];
self.timer = nil;
handleCrashException(JJExceptionGuardNSTimer,[NSString stringWithFormat:@"Need invalidate timer from target:%@ method:%@",self.targetClassName,self.targetMethodName]);
return;
}
if ([self.target respondsToSelector:self.selector]) {
// Fix swift case, the parent class is SwiftObject, did not invoke the methodSignatureForSelector method
// https://github.com/jezzmemo/JJException/issues/123
((void(*)(id, SEL, NSTimer*))objc_msgSend)(self.target, self.selector, _timer);
}
}