菜鸟教程小白 发表于 2022-12-13 06:46:55

ios - iPhone 崩溃、ASIHTTPRequest 或 NSURL 相关


                                            <p><p>鉴于以下符号化的崩溃日志,是否更有可能由于线程 5 上的 ASIHTTPRequest 或线程 3 上的 NSURLConnection 而发生崩溃?我问是因为这个问题有类似的问题:<a href="https://stackoverflow.com/questions/2164948/iphone-asihttprequest-exc-bad-access-when-request-did-finished" rel="noreferrer noopener nofollow">ASIHTTPRequest, EXC_BAD_ACCESS when request did finished</a> </p>

<p>但是,他们在 ASIHTTPREquest 崩溃方面有更多信息,而且它在线程 3 上,而我的 NSURLConnection 在线程 3 上,信息比其他更多。</p>

<pre><code>    Exception Type:EXC_CRASH (SIGABRT)
Exception Codes: 0x00000000, 0x00000000
Crashed Thread:0

Thread 0 Crashed:
0   libSystem.B.dylib               0x33bd52d4 __kill + 8
1   libSystem.B.dylib               0x33bd52c4 kill + 4
2   libSystem.B.dylib               0x33bd52b6 raise + 10
3   libSystem.B.dylib               0x33be9d72 abort + 50
4   libstdc++.6.dylib               0x31bdba20 __gnu_cxx::__verbose_terminate_handler() + 376
5   libobjc.A.dylib               0x3347c594 _objc_terminate + 104
6   libstdc++.6.dylib               0x31bd9df2 __cxxabiv1::__terminate(void (*)()) + 46
7   libstdc++.6.dylib               0x31bd9e46 std::terminate() + 10
8   libstdc++.6.dylib               0x31bd9f16 __cxa_throw + 78
9   libobjc.A.dylib               0x3347b4c4 objc_exception_throw + 64
10Foundation                      0x33639910 __NSThreadPerformPerform + 648
11CoreFoundation                  0x33a767d6 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 6
12CoreFoundation                  0x33a485b0 __CFRunLoopDoSources0 + 376
13CoreFoundation                  0x33a47e54 __CFRunLoopRun + 224
14CoreFoundation                  0x33a47c80 CFRunLoopRunSpecific + 224
15CoreFoundation                  0x33a47b88 CFRunLoopRunInMode + 52
16GraphicsServices                0x33b0e4a4 GSEventRunModal + 108
17GraphicsServices                0x33b0e550 GSEventRun + 56
18UIKit                           0x32099322 - + 406
19UIKit                           0x32096e8c UIApplicationMain + 664
20AppName                         0x00002172 main (main.m:14)
21AppName                         0x0000213c start + 32

Thread 1:
0   libSystem.B.dylib               0x33b89974 kevent + 24
1   libSystem.B.dylib               0x33c33704 _dispatch_mgr_invoke + 88
2   libSystem.B.dylib               0x33c33174 _dispatch_queue_invoke + 96
3   libSystem.B.dylib               0x33c32b98 _dispatch_worker_thread2 + 120
4   libSystem.B.dylib               0x33bd724a _pthread_wqthread + 258
5   libSystem.B.dylib               0x33bcf970 start_wqthread + 0

Thread 2:
0   libSystem.B.dylib               0x33b5d268 mach_msg_trap + 20
1   libSystem.B.dylib               0x33b5f354 mach_msg + 44
2   CoreFoundation                  0x33a48648 __CFRunLoopServiceMachPort + 88
3   CoreFoundation                  0x33a47ed2 __CFRunLoopRun + 350
4   CoreFoundation                  0x33a47c80 CFRunLoopRunSpecific + 224
5   CoreFoundation                  0x33a47b88 CFRunLoopRunInMode + 52
6   WebCore                         0x304df124 RunWebThread(void*) + 332
7   libSystem.B.dylib               0x33bd6886 _pthread_start + 242
8   libSystem.B.dylib               0x33bcba88 thread_start + 0

Thread 3:
0   libSystem.B.dylib               0x33b5d268 mach_msg_trap + 20
1   libSystem.B.dylib               0x33b5f354 mach_msg + 44
2   CoreFoundation                  0x33a48648 __CFRunLoopServiceMachPort + 88
3   CoreFoundation                  0x33a47ed2 __CFRunLoopRun + 350
4   CoreFoundation                  0x33a47c80 CFRunLoopRunSpecific + 224
5   CoreFoundation                  0x33a47b88 CFRunLoopRunInMode + 52
6   Foundation                      0x336465f6 + + 206
7   Foundation                      0x33624192 - + 38
8   Foundation                      0x3361d242 __NSThread__main__ + 966
9   libSystem.B.dylib               0x33bd6886 _pthread_start + 242
10libSystem.B.dylib               0x33bcba88 thread_start + 0

Thread 4:
0   libSystem.B.dylib               0x33b8168c select$DARWIN_EXTSN + 20
1   CoreFoundation                  0x33a7f662 __CFSocketManager + 582
2   libSystem.B.dylib               0x33bd6886 _pthread_start + 242
3   libSystem.B.dylib               0x33bcba88 thread_start + 0

Thread 5:
0   libSystem.B.dylib               0x33b5d268 mach_msg_trap + 20
1   libSystem.B.dylib               0x33b5f354 mach_msg + 44
2   CoreFoundation                  0x33a48648 __CFRunLoopServiceMachPort + 88
3   CoreFoundation                  0x33a47ed2 __CFRunLoopRun + 350
4   CoreFoundation                  0x33a47c80 CFRunLoopRunSpecific + 224
5   CoreFoundation                  0x33a57efe CFRunLoopRun + 42
6   StageBloc                     0x00032a08 + (ASIHTTPRequest.m:4269)
7   Foundation                      0x33624192 - + 38
8   Foundation                      0x3361d242 __NSThread__main__ + 966
9   libSystem.B.dylib               0x33bd6886 _pthread_start + 242
10libSystem.B.dylib               0x33bcba88 thread_start + 0
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>正如其他人所说,故障转储中没有足够的信息来判断可能涉及的是 NSURLConnection 还是 ASIHTTPRequest 线程,控制台输出可能会有所帮助。</p>

<p>但是,根据过去的经验,它似乎很有可能涉及 ASIHTTPRequest。</p>

<p>您使用的是什么版本的 ASIHTTPRequest?</p>

<p>人们对 ASIHTTPRequest 最常见的问题是请求与委托(delegate)生命周期的问题,因此我建议您仔细检查在 dealloc 方法中您拥有的可以成为 ASIHTTPRequest(或 ASINetworkQueue)的委托(delegate)的每个对象:</p>

<pre><code>
;
;
</code></pre>

<p>应该为<strong>每个</strong>潜在的事件请求执行此操作。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - iPhone 崩溃、ASIHTTPRequest 或 NSURL 相关,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/5240511/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/5240511/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - iPhone 崩溃、ASIHTTPRequest 或 NSURL 相关