gpt4 book ai didi

苹果手机 : random EXC_BAD_ACCESS with NSURLConnection

转载 作者:行者123 更新时间:2023-12-03 20:29:13 25 4
gpt4 key购买 nike

我有时会收到有关 NSURLConnection 的 EXC_BAD_ACCESS 的崩溃报告(根据崩溃报告,我猜这是关于 NSURLConnection 的)。

我在 StackOverflow 上发现了一个问题,其中包含相同类型的报告,但没有任何帮助:/( NSURLConnection causes bad access crash );我尝试使用 NSZombieEnabled 运行应用程序,但由于这个问题确实是“随机的”,所以我在使用 NSZombieEnabled 运行时从未设法得到它:/

有人有提示吗?

非常感谢:)

这是一份报告:

Thread 3 Crashed:
0 libobjc.A.dylib 0x0000286c objc_msgSend + 16
1 CoreFoundation 0x0000325c CFEqual + 92
2 CoreFoundation 0x000b081c __CFBasicHashStandardEquateKeys + 12
3 CoreFoundation 0x000b2578 ___CFBasicHashFindBucket_Linear + 216
4 CoreFoundation 0x00002ff8 CFBasicHashFindBucket + 220
5 CoreFoundation 0x00002ec6 CFDictionaryGetValue + 50
6 CFNetwork 0x0005853a HTTPMessage::copyConstantHeaderFieldValue(unsigned int) const + 26
7 CFNetwork 0x00090024 URLRequest::copyConstantHeaderFieldValue(unsigned int) const + 20
8 CFNetwork 0x0008ce0e HTTPProtocol::getCacheStoragePolicy(__CFHTTPMessage*) + 158
9 CFNetwork 0x0008e6c8 HTTPProtocol::updateForHeader(__CFHTTPMessage*) + 492
10 CFNetwork 0x0008f73c HTTPProtocol::performHeaderRead() + 368
11 CFNetwork 0x0008fbea HTTPProtocol::httpReadStreamEvent(unsigned long) + 110
12 CFNetwork 0x0008fd34 HTTPProtocol::_httpReadStreamCB(__CFReadStream*, unsigned long, void*) + 4
13 CoreFoundation 0x0004985e _signalEventSync + 70
14 CoreFoundation 0x000497f2 _cfstream_shared_signalEventSync + 198
15 CoreFoundation 0x00071a86 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 6
16 CoreFoundation 0x000736ac __CFRunLoopDoSources0 + 188
17 CoreFoundation 0x00074504 __CFRunLoopRun + 224
18 CoreFoundation 0x0001d8e4 CFRunLoopRunSpecific + 224
19 CoreFoundation 0x0001d7ec CFRunLoopRunInMode + 52
20 Foundation 0x0003b71e +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] + 206
21 Foundation 0x0000bc96 -[NSThread main] + 38
22 Foundation 0x000909da __NSThread__main__ + 966
23 libSystem.B.dylib 0x0007a986 _pthread_start + 242
24 libSystem.B.dylib 0x000700e4 thread_start + 0

更新

当 NSZombieEnabled 开启时,我终于成功地得到了错误......但这没有多大帮助:/

这是回溯:

[Switching to thread 13059]
Program received signal: “EXC_BAD_ACCESS”.
[Switching to thread 13059]
(gdb) bt
#0 0x3090ce9c in CFDictionaryGetValue ()
#1 0x35233540 in HTTPMessage::copyConstantHeaderFieldValue ()
#2 0x3526b02a in URLRequest::copyConstantHeaderFieldValue ()
#3 0x35267e14 in HTTPProtocol::getCacheStoragePolicy ()
#4 0x352693e2 in HTTPProtocol::attemptToCacheMovedPermanently ()
#5 0x3526a6c8 in HTTPProtocol::performHeaderRead ()
#6 0x3526abf0 in HTTPProtocol::httpReadStreamEvent ()
#7 0x3526ad3a in HTTPProtocol::_httpReadStreamCB ()
#8 0x30953864 in _signalEventSync ()
#9 0x309537f8 in _cfstream_shared_signalEventSync ()
#10 0x3097ba8c in __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ ()
#11 0x3097d6b2 in __CFRunLoopDoSources0 ()
#12 0x3097e50a in __CFRunLoopRun ()
#13 0x309278ea in CFRunLoopRunSpecific ()
#14 0x309277f2 in CFRunLoopRunInMode ()
#15 0x3148b724 in +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] ()
#16 0x3145bc9c in -[NSThread main] ()
#17 0x314e09e0 in __NSThread__main__ ()
#18 0x3129298c in _pthread_start ()
#19 0x312880ec in thread_start ()
(gdb)

最佳答案

我不确定是否真的有足够的信息来提供很多帮助:-(

首先,一定要坚持 NSZombie 的做法 - 我相信你迟早会实现它的。请确保检查控制台输出,nszombie 抛出的异常有可能在某个地方被捕获并被忽略。

除此之外,只需仔细检查您使用内存所做的一切即可。确保请求在释放之前被取消,您永远不会意外地用另一个请求覆盖指向正在运行的请求的指针,确保您没有过度释放传递给请求的任何对象。

最后一个建议可能会也可能不会解决您的问题,那就是尝试 ASIHTTPRequest:

http://allseeing-i.com/ASIHTTPRequest/

它可以完成 NSURLConnection 可以做的所有事情(此外还有很多有用的事情),如果您仍然遇到崩溃,您至少会获得源代码,以便您可以获得有关问题所在的更多信息。

关于苹果手机 : random EXC_BAD_ACCESS with NSURLConnection,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3717475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com