-1

这是我的问题,我有一个单例类,我从各种类中调用它,并且我在该单例类中有一个属性可以从当前类传递 self(将执行哪个启动单例),我使用 self 对象调用当前类中的方法来自单身人士。每次调用单例类时,这里都会将此代理对象(单例属性)设置为单例中的 nil。

因此,如果我快速运行应用程序并再次(即非常快速地调用该单例)应用程序在 Web 视图中崩溃确实完成了加载方法。

对此有任何建议和想法。

这里代码供参考。

    +(Signout *)sharedInstance{
        @synchronized(self) {
            if (signOutInstance == nil) 
            {
                signOutInstance= [[self alloc] init]; 
            }
        }
        return signOutInstance;
    }

    -(void)signOut {

        [self signOutWebView];

    }

- (void)webViewDidFinishLoad:(UIWebView *)twebView {

    if (nil != self.instance) {
        if ([self.instance respondsToSelector:@selector(removeIndicator)]) {
            [self.instance removeLoadingIndicator];
        }
    }

}

提前致谢。

4

1 回答 1

1

试试这个可能会有帮助。

if (nil != self.instance) {
        if ([self.instance respondsToSelector:@selector(removeIndicator)]) {
            [self.instance removeLoadingIndicator];
            self.instance = nil;
        }
    }

通过打印语句调试您的代码以找出它崩溃的原因 您是否尝试过使用僵尸来查找崩溃的原因。

于 2012-04-28T11:06:55.487 回答