• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Async NSURLConnection - Crashes - Call Stacks
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Async NSURLConnection - Crashes - Call Stacks


  • Subject: Async NSURLConnection - Crashes - Call Stacks
  • From: Jerry Krinock <email@hidden>
  • Date: Mon, 19 Apr 2010 21:33:14 -0700

I can find in the list archives for 2005-2007 quite a few mentions of crashes when using asynchronous NSURLConnection, and in 2005 I myself reported Problem ID 4347324.  The crashes seemed to stop without a definitive resolution, possibly with Mac OS 10.5, but have reappeared in my apps recently.  A crash is likeliest when the app is rapidly creating, reading the first packet, cancelling, and releasing NSURLConnections at a rate of 20 per second, has 10-20 such connections open simultaneously, and may be more likely on multi-processor/multi-core Mac Pro systems with high-speed network access.

So on Wednesday I've scheduled time at an ADC lab to beat on this.  Below, I've pasted in call stacks for the three crash reports I've collected; one from my testing and two from users.  The first two are somewhat similar, involving +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] on a secondary thread.  I suppose this is a callback when data arrives.  But the third one is quite different, and is on the main thread.

I'd appreciate any suggestions of what to look for, or any better explanation of what's going on in those call stacks.  I know memory management is a possible issue, although I've been there many times, I'm looking again.

Thank you,

Jerry Krinock

*** Jerry's Crash ***
Thread 7 crashed:
#0	0x92b37120 in CFReadStreamCopyError
#1	0x913af407 in FTPProtocol::ftpReadStreamEvent
#2	0x92afedd3 in _signalEventSync
#3	0x92aff7be in _cfstream_solo_signalEventSync
#4	0x92afea88 in _CFStreamSignalEvent
#5	0x92aff707 in CFReadStreamSignalEvent
#6	0x9136ffcd in _DataStreamCallBack
#7	0x92afedd3 in _signalEventSync
#8	0x92afed58 in _cfstream_shared_signalEventSync
#9	0x92a7515b in __CFRunLoopDoSources0
#10	0x92a72c1f in __CFRunLoopRun
#11	0x92a720f4 in CFRunLoopRunSpecific
#12	0x92a71f21 in CFRunLoopRunInMode
#13	0x93dc6434 in +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:]
#14	0x93d8d8dc in -[NSThread main]
#15	0x93d8d88c in __NSThread__main__
#16	0x914c2a19 in _pthread_start
#17	0x914c289e in thread_start


*** Jon's Crash ***
Thread 3 Crashed:
0   com.apple.CoreFoundation          0x91a2926e CFHash + 174
1   com.apple.CoreFoundation          0x91a2906c ___CFBasicHashFindBucket1 + 444
2   com.apple.CoreFoundation          0x91a3125c CFBasicHashFindBucket + 252
3   com.apple.CoreFoundation          0x91a31123 CFDictionaryGetValue + 131
4   com.apple.CoreFoundation          0x91b17a95 _CFStreamDetachSource + 405
5   com.apple.CoreFoundation          0x91a4edeb _CFStreamClose + 75
6   com.apple.CFNetwork               0x97fec8e1 HTTPProtocol::destroyReadStream() + 173
7   com.apple.CFNetwork               0x97fec7b1 HTTPProtocol::cleanupStreams() + 93
8   com.apple.CFNetwork               0x97feb221 HTTPProtocol::httpReadStreamEvent(unsigned long) + 365
9   com.apple.CoreFoundation          0x91adfdd3 _signalEventSync + 99
10  com.apple.CoreFoundation          0x91adfd58 _cfstream_shared_signalEventSync + 664
11  com.apple.CoreFoundation          0x91a5615b __CFRunLoopDoSources0 + 1563
12  com.apple.CoreFoundation          0x91a53c1f __CFRunLoopRun + 1071
13  com.apple.CoreFoundation          0x91a530f4 CFRunLoopRunSpecific + 452
14  com.apple.CoreFoundation          0x91a52f21 CFRunLoopRunInMode + 97
15  com.apple.Foundation              0x9689d434 +[NSURLConnection(NSURLConnectionReallyInternal) _resourceLoadLoop:] + 329
16  com.apple.Foundation              0x968648dc -[NSThread main] + 45
17  com.apple.Foundation              0x9686488c __NSThread__main__ + 1499
18  libSystem.B.dylib                 0x90567a19 _pthread_start + 345
19  libSystem.B.dylib                 0x9056789e thread_start + 34

*** Tony's Crash ***
Thread 0 Crashed:  Dispatch queue: com.apple.main-thread
0   com.apple.CoreFoundation      	0x99138d04 CFRelease + 196
1   com.apple.CFNetwork           	0x905e58ec HTTPProtocol::destroyReadStream() + 184
2   com.apple.CFNetwork           	0x905e57b1 HTTPProtocol::cleanupStreams() + 93
3   com.apple.CFNetwork           	0x905e5acb HTTPProtocol::~HTTPProtocol() + 155
4   com.apple.CoreFoundation      	0x99138ea1 _CFRelease + 353
5   com.apple.CFNetwork           	0x905e554c URLConnectionLoader::reallyCleanUpProtocol(unsigned char) + 240
6   com.apple.CFNetwork           	0x90640249 URLConnectionLoader::cleanupProtocolFromClientThread() + 25
7   com.apple.CFNetwork           	0x905bb2c8 URLConnectionClient::getRequestForTransmission(_CFURLResponse*, _CFURLRequest const*, __CFError**) + 574
8   com.apple.CFNetwork           	0x905bacaf URLConnectionClient::_clientWillSendRequest(_CFURLRequest const*, _CFURLResponse*, URLConnectionClient::ClientConnectionEventQueue*) + 223
9   com.apple.CFNetwork           	0x9063f54a URLConnectionClient::ClientConnectionEventQueue::processAllEventsAndConsumePayload(XConnectionEventInfo<XClientEvent, XClientEventParams>*, long) + 148
10  com.apple.CFNetwork           	0x905baace URLConnectionClient::processEvents() + 94
11  com.apple.CFNetwork           	0x905ba96f MultiplexerSource::perform() + 183
12  com.apple.CoreFoundation      	0x9916b15b __CFRunLoopDoSources0 + 1563
13  com.apple.CoreFoundation      	0x99168c1f __CFRunLoopRun + 1071
14  com.apple.CoreFoundation      	0x991680f4 CFRunLoopRunSpecific + 452
15  com.apple.CoreFoundation      	0x99167f21 CFRunLoopRunInMode + 97
16  com.apple.HIToolbox           	0x9827b0fc RunCurrentEventLoopInMode + 392
17  com.apple.HIToolbox           	0x9827aeb1 ReceiveNextEventCommon + 354
18  com.apple.HIToolbox           	0x9827ad36 BlockUntilNextEventMatchingListInMode + 81
19  com.apple.AppKit              	0x979ae135 _DPSNextEvent + 847
20  com.apple.AppKit              	0x979ad976 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 156
21  com.apple.AppKit              	0x9796fbef -[NSApplication run] + 821
22  com.apple.AppKit              	0x97967c85 NSApplicationMain + 574

_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: Async NSURLConnection - Crashes - Call Stacks
      • From: Jeff Johnson <email@hidden>
  • Prev by Date: An iTunes-like music playing view?
  • Next by Date: Re: Async NSURLConnection - Crashes - Call Stacks
  • Previous by thread: An iTunes-like music playing view?
  • Next by thread: Re: Async NSURLConnection - Crashes - Call Stacks
  • Index(es):
    • Date
    • Thread