Re: Crash while trying to add an object to a mutable dictionaryy
Re: Crash while trying to add an object to a mutable dictionaryy
- Subject: Re: Crash while trying to add an object to a mutable dictionaryy
- From: Laurent Daudelin <email@hidden>
- Date: Thu, 20 Sep 2012 20:51:22 -0700
Thanks, Greg! I know what you mean and it's very likely what's happening since there can be 8 downloads happening simultaneously in different threads. I will lock it down so that only one object can modify it.
Thanks again!
-Laurent.
--
Laurent Daudelin
AIM/iChat/Skype:LaurentDaudelin http://www.nemesys-soft.com/
Logiciels Nemesys Software email@hidden
On Sep 20, 2012, at 18:08, Greg Parker <email@hidden> wrote:
> On Sep 20, 2012, at 1:31 PM, Laurent Daudelin <email@hidden> wrote:
>>
>> • 0 erodr 0x0011cfe6 testflight_backtrace + 238
>> • 1 erodr 0x0011dcd0 TFSignalHandler + 264
>> • 2 libsystem_c.dylib 0x3901de92 _sigtramp + 42
>> • 3 libsystem_c.dylib 0x39014122 pthread_kill + 58
>> • 4 libsystem_c.dylib 0x39050972 abort + 94
>> • 5 libsystem_c.dylib 0x3901af18 <redacted> + 0
>> • 6 libsystem_c.dylib 0x3901b234 <redacted> + 84
>> • 7 libsystem_c.dylib 0x38fe92de free + 170
>> • 8 CoreFoundation 0x35262cae <redacted> + 206
>> • 9 CoreFoundation 0x351c5560 <redacted> + 732
>> • 10 erodr 0x000d7b06 -[ERAppDelegate startNetworkIndicatorForInstance:] (ERAppDelegate.m:747)
>> • 11 erodr 0x000f531c __68-[StreamerImageTextCell downloadPictureFromURL:forKey:inDictionary:]_block_invoke_0 (StreamerImageTextCell.m:81)
>> • 12 Foundation 0x32ca5538 <redacted> + 200
>> • 13 Foundation 0x32c9cdb8 <redacted> + 840
>> • 14 Foundation 0x32d153da <redacted> + 102
>> • 15 libdispatch.dylib 0x33f5411e <redacted> + 10
>> • 16 libdispatch.dylib 0x33f58960 <redacted> + 252
>> • 17 libdispatch.dylib 0x33f58ac0 <redacted> + 84
>> • 18 libsystem_c.dylib 0x38feba10 <redacted> + 360
>> • 19 libsystem_c.dylib 0x38feb8a3 start_wqthread + 7
>>
>> Line 747 of ERAppDelegate.m is:
>>
>> [self.networkIndicatorClients setObject:numberOfInvocations forKey:addressAsString];
>>
>> I have no idea why this crash is happening. I use the same technique in another app and never had a crash in the startNetworkIndicatorForInstance:.
>
>
> What is your thread-safety story here? I don't see anything obvious to protect the networkIndicatorClients container from concurrent modification. Reading the container from one thread while writing from another, or writing from two threads at once, could both cause the error you see.
_______________________________________________
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