6

我提出一个 url-Request 并等待答案

我开始请求,然后等到 synchronousOperationComplete=TRUE

NSRunLoop *theRL = [NSRunLoop currentRunLoop];

while (!synchronousOperationComplete && [theRL runMode:NSDefaultRunLoopMode beforeDate:[NSDate distantFuture]]);

然后我返回响应

一切似乎都很好,我得到了响应,一切正常,但是当我关闭应用程序时,我得到:

bool _WebTryThreadLock(bool), 0x227f40: Multiple locks on web thread not allowed! Please file a bug. Crashing now...

1   _ZL17_WebTryThreadLockb
2   _ZL14WebRunLoopLockP19__CFRunLoopObservermPv
3   __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__
4   __CFRunLoopDoObservers
5   __CFRunLoopRun
6   CFRunLoopRunSpecific
7   CFRunLoopRunInMode
8   _ZL12RunWebThreadPv
9   _pthread_start
10  thread_start

似乎是 NSRunLoop 导致错误的原因,当我推荐它时,错误没有出现。

我使用 IOS 5.0 有人知道我可以做些什么来避免这个错误吗?

我在 IOS 4.3 和 IOS5 Beta 中使用了它,它工作正常。

但是我将我的tomcat6移到了另一台服务器上,也许这是服务器的错误

THX mBax

4

3 回答 3

3

我刚刚收到相同的错误消息,但我尝试在屏幕上没有的 webView 上调用 stringByEvaluatingJavaScript。

通常,此消息暗示在该项目的特定线程被锁定时,某些东西正试图访问一个项目 (UIWebView)。

于 2012-05-19T11:47:05.210 回答
2

如果您使用了以下代码:

[[NSRunLoop currentRunLoop] runUntilDate:[NSDate dateWithTimeIntervalSinceNow:2.0]];

如果不需要,请将其删除,或减少时间间隔。它对我有用。

于 2012-12-12T06:53:00.013 回答
0

对我来说,这是一个添加在

- (void)applicationDidEnterBackground:(UIApplication *)application{}

我表扬了它,现在它可以了!

https://devforums.apple.com/message/575760#575760

如果有人有同样的错误,可能会有所帮助

于 2011-11-08T13:26:55.697 回答