This repository was archived by the owner on Feb 2, 2023. It is now read-only.
Description Although it's not immediately clear why this is a deadlock rather than just a performance issue — it could be that it isn't a true deadlock and just stalled for too long — the current code does hold the instanceLock while calling into the downloader. We may need some other mechanism to "transactionalize" this code to ensure two calls to the downloader aren't started by the same node before the last call has finished, though.
The more important takeaway is that NSOperation uses a spinlock, and in profiles is always a top source of work on the main thread (competitive with and sometimes more than all UIView costs!) If this code could reduce its dependencies and not lock on internal operating system black-box stuff, then it would make sense to hold the instanceLock while calling into it.
At the moment, I believe the cases where this can deadlock include when the main thread is busy doing something that can block NSOperation or the Notifications / KVO locking that it acquires, and meanwhile the main thread's processing of that KVO or notification is accessing a node with a locked property.
https://fabric.io/pinterest6/ios/apps/pinterest/issues/57dbb2df0aeb16625b51df2c/sessions/8382232a6e494f7cbb49b78834f6c781_e396a725a18f44339369674db8b9b636_0_v1
# Crashlytics - plaintext stacktrace downloaded by Scott Goodson at Fri, 16 Dec 2016 04:56:08 GMT
# URL: https://fabric.io/pinterest6/ios/apps/pinterest/issues/57dbb2df0aeb16625b51df2c/sessions/8382232a6e494f7cbb49b78834f6c781_e396a725a18f44339369674db8b9b636_0_v1
# Organization: Pinterest
# Platform: ios
# Application: Pinterest
# Version: 6.13 (3)
# Bundle Identifier: pinterest
# Issue #: 117632
# Issue ID: 57dbb2df0aeb16625b51df2c
# Session ID: 8382232a6e494f7cbb49b78834f6c781_e396a725a18f44339369674db8b9b636_0_v1
# Date: 2017-10-26T16:58:11Z
# OS Version: 9.3.5 (13G36)
# Device: iPad 4
# RAM Free: 13.9%
# Disk Free: 11.6%
#0. Crashed: com.twitter.crashlytics.ios.exception
0 Pinterest 0xa8d59d CLSProcessRecordAllThreads + 551112
1 Pinterest 0xa8d59d CLSProcessRecordAllThreads + 551112
2 Pinterest 0xa8d7b5 CLSProcessRecordAllThreads + 551648
3 Pinterest 0xa81f6f CLSHandler + 504474
4 Pinterest 0xa8c457 __CLSExceptionRecord_block_invoke + 546690
5 libdispatch.dylib 0x22a2fcab _dispatch_client_callout + 22
6 libdispatch.dylib 0x22a38f3d _dispatch_barrier_sync_f_invoke + 56
7 Pinterest 0xa8be5f CLSExceptionRecord + 545162
8 Pinterest 0xa8bc8d CLSExceptionRecordNSException + 544696
9 Pinterest 0xa8b7fb CLSTerminateHandler() + 543526
10 libc++abi.dylib 0x2264ce17 std::__terminate(void (*)()) + 78
11 libc++abi.dylib 0x2264c8f7 __cxa_rethrow + 102
12 libobjc.A.dylib 0x2265af47 objc_exception_rethrow + 42
13 CoreFoundation 0x22dac24f CFRunLoopRunSpecific + 650
14 CoreFoundation 0x22dabfbd CFRunLoopRunInMode + 108
15 GraphicsServices 0x243c8af9 GSEventRunModal + 160
16 UIKit 0x274e0435 UIApplicationMain + 144
17 Pinterest 0x2d7c3 main (main.m:47)
18 libdispatch.dylib 0x22a58873 (Missing)
--
Fatal Exception: Deadlock Detected
0 CoreFoundation 0x22e9db0b __exceptionPreprocess
1 libobjc.A.dylib 0x2265adff objc_exception_throw
2 Pinterest 0xa0c6d -[PIDeadlockDetector detectorThread] (PIDeadlockDetector.m:21)
3 libsystem_platform.dylib 0x22bcd857 _sigtramp
4 libsystem_pthread.dylib 0x22bd2ad3 _pthread_mutex_lock_wait
5 libsystem_pthread.dylib 0x22bd2c5f _pthread_mutex_lock_slow
6 Pinterest 0x5d73e5 ASDN::Mutex::lock() (ASThread.h:183)
7 Pinterest 0x796491 -[ASDisplayNode(UIViewBridge) frame] (ASDisplayNode+UIViewBridge.mm:225)
8 Pinterest 0x4fccd1 -[PIPinCloseupNode hasScrolledPassedPinImageNode] (PIPinCloseupNode.m:463)
9 Pinterest 0x61fb29 -[PIPinCloseupGalleryViewController shouldAttemptPopWithTransition:toViewController:] (PIPinCloseupGalleryViewController.m:630)
10 Pinterest 0x34a8af -[CBLNavigationControllerDelegate navigationController:animationControllerForOperation:fromViewController:toViewController:] (CBLNavigationControllerDelegate.m:48)
11 UIKit 0x2762417b -[UINavigationController _customTransitionController:]
12 UIKit 0x2755077b _popViewControllerNormal
13 UIKit 0x27550425 -[UINavigationController _popViewControllerWithTransition:allowPoppingLast:]
14 UIKit 0x27623ee1 -[UINavigationController popViewControllerAnimated:]
15 Pinterest 0x7d15c9 -[ASNavigationController popViewControllerAnimated:] (ASNavigationController.m:95)
16 Pinterest 0x500ca9 __50-[PIPinCloseupNode pinActionBarBackButtonPressed:]_block_invoke (PIPinCloseupNode.m:1036)
17 Pinterest 0x6f5259 -[PIExperiencePlacementController handleEndedExperience:completion:completed:] (PIExperiencePlacementController.m:331)
18 Pinterest 0x6f465f -[PIExperiencePlacementController showPrefetchedExperienceForType:completion:] (PIExperiencePlacementController.m:131)
19 Pinterest 0x500bc7 -[PIPinCloseupNode pinActionBarBackButtonPressed:] (PIPinCloseupNode.m:1043)
20 Pinterest 0x33795 -[PIPinCloseupActionBarNode backButtonPressed:] (PIPinCloseupActionBarNode.m:542)
21 Pinterest 0x78bf43 __55-[ASControlNode sendActionsForControlEvents:withEvent:]_block_invoke (ASControlNode.mm:433)
22 Pinterest 0x78add5 _ASEnumerateControlEventsIncludedInMaskWithBlock(unsigned int, void (unsigned int) block_pointer) (ASControlNode.mm:454)
23 Pinterest 0x78bbfb -[ASControlNode sendActionsForControlEvents:withEvent:] (ASControlNode.mm:436)
24 Pinterest 0x78a7e5 -[ASControlNode touchesEnded:withEvent:] (ASControlNode.mm:230)
25 Pinterest 0x764fb9 -[_ASDisplayView touchesEnded:withEvent:] (_ASDisplayView.mm:255)
26 UIKit 0x27468b97 _UIGestureRecognizerUpdate
27 CoreFoundation 0x22e5f2b1 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__
28 CoreFoundation 0x22e5d5a7 __CFRunLoopDoObservers
29 CoreFoundation 0x22e5d9e5 __CFRunLoopRun
30 CoreFoundation 0x22dac1c9 CFRunLoopRunSpecific
31 CoreFoundation 0x22dabfbd CFRunLoopRunInMode
32 GraphicsServices 0x243c8af9 GSEventRunModal
33 UIKit 0x274e0435 UIApplicationMain
34 Pinterest 0x2d7c3 main (main.m:47)
35 libdispatch.dylib 0x22a58873 (Missing)
#0. Crashed: com.twitter.crashlytics.ios.exception
0 Pinterest 0xa8d59d CLSProcessRecordAllThreads + 551112
1 Pinterest 0xa8d59d CLSProcessRecordAllThreads + 551112
2 Pinterest 0xa8d7b5 CLSProcessRecordAllThreads + 551648
3 Pinterest 0xa81f6f CLSHandler + 504474
4 Pinterest 0xa8c457 __CLSExceptionRecord_block_invoke + 546690
5 libdispatch.dylib 0x22a2fcab _dispatch_client_callout + 22
6 libdispatch.dylib 0x22a38f3d _dispatch_barrier_sync_f_invoke + 56
7 Pinterest 0xa8be5f CLSExceptionRecord + 545162
8 Pinterest 0xa8bc8d CLSExceptionRecordNSException + 544696
9 Pinterest 0xa8b7fb CLSTerminateHandler() + 543526
10 libc++abi.dylib 0x2264ce17 std::__terminate(void (*)()) + 78
11 libc++abi.dylib 0x2264c8f7 __cxa_rethrow + 102
12 libobjc.A.dylib 0x2265af47 objc_exception_rethrow + 42
13 CoreFoundation 0x22dac24f CFRunLoopRunSpecific + 650
14 CoreFoundation 0x22dabfbd CFRunLoopRunInMode + 108
15 GraphicsServices 0x243c8af9 GSEventRunModal + 160
16 UIKit 0x274e0435 UIApplicationMain + 144
17 Pinterest 0x2d7c3 main (main.m:47)
18 libdispatch.dylib 0x22a58873 (Missing)
#1. com.apple.libdispatch-manager
0 libsystem_kernel.dylib 0x22b2d2f8 kevent_qos + 24
1 libdispatch.dylib 0x22a3f837 _dispatch_mgr_invoke + 254
2 libdispatch.dylib 0x22a31917 _dispatch_mgr_thread + 38
#2. com.apple.NSURLConnectionLoader
0 libsystem_kernel.dylib 0x22b178a8 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x22b176a9 mach_msg + 40
2 CoreFoundation 0x22e5f6ad __CFRunLoopServiceMachPort + 136
3 CoreFoundation 0x22e5da33 __CFRunLoopRun + 1050
4 CoreFoundation 0x22dac1c9 CFRunLoopRunSpecific + 516
5 CoreFoundation 0x22dabfbd CFRunLoopRunInMode + 108
6 CFNetwork 0x23401bdf +[NSURLConnection(Loader) _resourceLoadLoop:] + 486
7 Foundation 0x236ca64d __NSThread__start__ + 1144
8 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
9 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
10 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#3. com.apple.CFSocket.private
0 libsystem_kernel.dylib 0x22b2beec __select + 20
1 CoreFoundation 0x22e64b51 __CFSocketManager + 572
2 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
3 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
4 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#4. com.twitter.crashlytics.ios.MachExceptionServer
0 libsystem_kernel.dylib 0x22b178a8 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x22b176a9 mach_msg + 40
2 Pinterest 0xa7dc91 CLSMachExceptionServer + 487356
3 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
4 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
5 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#5. AVAudioSession Notify Thread
0 libsystem_kernel.dylib 0x22b178a8 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x22b176a9 mach_msg + 40
2 CoreFoundation 0x22e5f6ad __CFRunLoopServiceMachPort + 136
3 CoreFoundation 0x22e5da33 __CFRunLoopRun + 1050
4 CoreFoundation 0x22dac1c9 CFRunLoopRunSpecific + 516
5 CoreFoundation 0x22dabfbd CFRunLoopRunInMode + 108
6 libAVFAudio.dylib 0x287d6257 GenericRunLoopThread::Entry(void*) + 134
7 libAVFAudio.dylib 0x287ab047 CAPThread::Entry(CAPThread*) + 154
8 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
9 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
10 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#6. com.apple.coremedia.player.async
0 libsystem_kernel.dylib 0x22b178f8 semaphore_wait_trap + 8
1 libdispatch.dylib 0x22a3d8af _dispatch_semaphore_wait_slow + 190
2 MediaToolbox 0x281e71d9 fpa_AsyncMovieControlThread + 1916
3 CoreMedia 0x24e85875 figThreadMain + 208
4 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
5 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
6 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#7. AFNetworking
0 libsystem_kernel.dylib 0x22b178a8 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x22b176a9 mach_msg + 40
2 CoreFoundation 0x22e5f6ad __CFRunLoopServiceMachPort + 136
3 CoreFoundation 0x22e5da33 __CFRunLoopRun + 1050
4 CoreFoundation 0x22dac1c9 CFRunLoopRunSpecific + 516
5 CoreFoundation 0x22dabfbd CFRunLoopRunInMode + 108
6 Foundation 0x235f942d -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 268
7 Foundation 0x23647d75 -[NSRunLoop(NSRunLoop) run] + 80
8 Pinterest 0x735e6f +[AFURLConnectionOperation networkRequestThreadEntryPoint:] (AFURLConnectionOperation.m:164)
9 Foundation 0x236ca64d __NSThread__start__ + 1144
10 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
11 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
12 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#8. WebThread
0 libsystem_kernel.dylib 0x22b178a8 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x22b176a9 mach_msg + 40
2 CoreFoundation 0x22e5f6ad __CFRunLoopServiceMachPort + 136
3 CoreFoundation 0x22e5da33 __CFRunLoopRun + 1050
4 CoreFoundation 0x22dac1c9 CFRunLoopRunSpecific + 516
5 CoreFoundation 0x22dabfbd CFRunLoopRunInMode + 108
6 WebCore 0x265be0f7 RunWebThread(void*) + 422
7 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
8 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
9 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#9. JavaScriptCore::Marking
0 libsystem_kernel.dylib 0x22b2b998 __psynch_cvwait + 24
1 libsystem_pthread.dylib 0x22bd01a5 _pthread_cond_wait + 536
2 libsystem_pthread.dylib 0x22bd10b9 pthread_cond_wait + 40
3 libc++.1.dylib 0x225f069d std::__1::condition_variable::wait(std::__1::unique_lock<std::__1::mutex>&) + 36
4 JavaScriptCore 0x261931d1 JSC::GCThread::waitForNextPhase() + 104
5 JavaScriptCore 0x2619323f JSC::GCThread::gcThreadMain() + 62
6 JavaScriptCore 0x25f9e431 WTF::threadEntryPoint(void*) + 148
7 JavaScriptCore 0x25f9e38f WTF::wtfThreadEntryPoint(void*) + 14
8 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
9 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
10 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#10. Deadlock Detection Thread
0 libsystem_kernel.dylib 0x22b2bffc __semwait_signal + 24
1 libsystem_c.dylib 0x22a7fbbd nanosleep + 172
2 Foundation 0x236c9b37 +[NSThread sleepForTimeInterval:] + 142
3 Pinterest 0xa0b0d +[PIDeadlockDetector detectionThreadLoop:] (PIDeadlockDetector.m:133)
4 Foundation 0x236ca64d __NSThread__start__ + 1144
5 libsystem_pthread.dylib 0x22bd0c7f _pthread_body + 138
6 libsystem_pthread.dylib 0x22bd0bf3 _pthread_start + 110
7 libsystem_pthread.dylib 0x22bcea08 thread_start + 8
#11. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#12. com.apple.NSURLSession-work
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Foundation 0x2365489f -[NSOperationQueue addOperationWithBlock:] + 34
7 CFNetwork 0x233b7acb -[__NSCFLocalSessionTask _task_onqueue_didFinish] + 282
8 CFNetwork 0x233f93ef __51-[__NSCFURLLocalSessionConnection _task_sendFinish]_block_invoke + 114
9 CFNetwork 0x233f859b -[__NSCFURLLocalSessionConnection withDelegateAndPendingCompletion:] + 190
10 CFNetwork 0x233f9379 -[__NSCFURLLocalSessionConnection _task_sendFinish] + 96
11 CFNetwork 0x233f859b -[__NSCFURLLocalSessionConnection withDelegateAndPendingCompletion:] + 190
12 CFNetwork 0x233fa03d -[__NSCFURLLocalSessionConnection _didFinishWithError:] + 248
13 CFNetwork 0x233fc0e3 SessionConnectionLoadable::_loaderClientEvent_DidFailWithError(__CFError*) + 110
14 CFNetwork 0x23463c5d ___ZN19URLConnectionLoader15protocolDidFailEP9__CFError_block_invoke + 24
15 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
16 libdispatch.dylib 0x22a39e7f _dispatch_queue_drain + 1762
17 libdispatch.dylib 0x22a32e17 _dispatch_queue_invoke + 282
18 libdispatch.dylib 0x22a3b20d _dispatch_root_queue_drain + 400
19 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
20 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
21 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#13. com.apple.root.utility-qos
0 libsystem_kernel.dylib 0x22b2ba08 __psynch_mutexwait + 24
1 libsystem_pthread.dylib 0x22bd2ad3 _pthread_mutex_lock_wait + 74
2 libsystem_pthread.dylib 0x22bceef7 pthread_mutex_lock + 118
3 CoreFoundation 0x22dcb3b1 _CFXNotificationRemoveObservers + 84
4 Foundation 0x235f412b -[NSNotificationCenter removeObserver:name:object:] + 242
5 Foundation 0x235f4259 -[NSNotificationCenter removeObserver:] + 28
6 Foundation 0x235ff6d5 -[__NSObserver dealloc] + 40
7 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
8 CoreFoundation 0x22db4d99 -[__NSDictionaryM dealloc] + 132
9 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
10 libsystem_blocks.dylib 0x22a74e4d _Block_object_dispose + 172
11 libsystem_blocks.dylib 0x22a74ac5 _Block_release + 216
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#14. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#15. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#16. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#17. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#18. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#19. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#20. com.apple.root.utility-qos
0 libsystem_kernel.dylib 0x22b2ba08 __psynch_mutexwait + 24
1 libsystem_pthread.dylib 0x22bd2ad3 _pthread_mutex_lock_wait + 74
2 libsystem_pthread.dylib 0x22bceef7 pthread_mutex_lock + 118
3 CoreFoundation 0x22dcb3b1 _CFXNotificationRemoveObservers + 84
4 Foundation 0x235f412b -[NSNotificationCenter removeObserver:name:object:] + 242
5 Foundation 0x235f4259 -[NSNotificationCenter removeObserver:] + 28
6 Foundation 0x235ff6d5 -[__NSObserver dealloc] + 40
7 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
8 CoreFoundation 0x22db4d99 -[__NSDictionaryM dealloc] + 132
9 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
10 libsystem_blocks.dylib 0x22a74e4d _Block_object_dispose + 172
11 libsystem_blocks.dylib 0x22a74ac5 _Block_release + 216
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#21. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#22. com.apple.root.utility-qos
0 libsystem_kernel.dylib 0x22b2ba08 __psynch_mutexwait + 24
1 libsystem_pthread.dylib 0x22bd2ad3 _pthread_mutex_lock_wait + 74
2 libsystem_pthread.dylib 0x22bceef7 pthread_mutex_lock + 118
3 CoreFoundation 0x22dcb3b1 _CFXNotificationRemoveObservers + 84
4 Foundation 0x235f412b -[NSNotificationCenter removeObserver:name:object:] + 242
5 Foundation 0x235f4259 -[NSNotificationCenter removeObserver:] + 28
6 Foundation 0x235ff6d5 -[__NSObserver dealloc] + 40
7 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
8 CoreFoundation 0x22db4d99 -[__NSDictionaryM dealloc] + 132
9 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
10 libsystem_blocks.dylib 0x22a74e4d _Block_object_dispose + 172
11 libsystem_blocks.dylib 0x22a74ac5 _Block_release + 216
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#23. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#24. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#25. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#26. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#27. com.apple.root.default-qos
0 libsystem_platform.dylib 0x22bcd6b8 _OSSpinLockLockSlow$VARIANT$wfe + 47
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#28. com.apple.root.utility-qos
0 CoreFoundation 0x22da8c20 CFGetTypeID + 15
1 CoreFoundation 0x22ef556b -[_CFXNotificationNameWildcardObjectRegistration match:matching:] + 130
2 CoreFoundation 0x22ef556b -[_CFXNotificationNameWildcardObjectRegistration match:matching:] + 130
3 CoreFoundation 0x22ea6601 -[_CFXNotificationRegistrar match:object:observer:enumerator:] + 1376
4 CoreFoundation 0x22dcb3e9 _CFXNotificationRemoveObservers + 140
5 Foundation 0x235f412b -[NSNotificationCenter removeObserver:name:object:] + 242
6 Foundation 0x235f4259 -[NSNotificationCenter removeObserver:] + 28
7 Foundation 0x235ff6d5 -[__NSObserver dealloc] + 40
8 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
9 CoreFoundation 0x22db4d99 -[__NSDictionaryM dealloc] + 132
10 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
11 libsystem_blocks.dylib 0x22a74e4d _Block_object_dispose + 172
12 libsystem_blocks.dylib 0x22a74ac5 _Block_release + 216
13 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
14 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
15 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
16 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#29. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#30. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#31. Thread
0 libsystem_pthread.dylib 0x22bce9f4 start_wqthread + 14
#32. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#33. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#34. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#35. com.apple.root.utility-qos
0 libsystem_kernel.dylib 0x22b2ba08 __psynch_mutexwait + 24
1 libsystem_pthread.dylib 0x22bd2ad3 _pthread_mutex_lock_wait + 74
2 libsystem_pthread.dylib 0x22bceef7 pthread_mutex_lock + 118
3 CoreFoundation 0x22dcb3b1 _CFXNotificationRemoveObservers + 84
4 Foundation 0x235f412b -[NSNotificationCenter removeObserver:name:object:] + 242
5 Foundation 0x235f4259 -[NSNotificationCenter removeObserver:] + 28
6 Foundation 0x235ff6d5 -[__NSObserver dealloc] + 40
7 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
8 CoreFoundation 0x22db4d99 -[__NSDictionaryM dealloc] + 132
9 libobjc.A.dylib 0x22674f8b objc_object::sidetable_release(bool) + 150
10 libsystem_blocks.dylib 0x22a74e4d _Block_object_dispose + 172
11 libsystem_blocks.dylib 0x22a74ac5 _Block_release + 216
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#36. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#37. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#38. com.apple.NSURLSession-work
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Foundation 0x2365489f -[NSOperationQueue addOperationWithBlock:] + 34
7 CFNetwork 0x2348b16d -[NSURLSession delegate_dataTask:didReceiveData:completionHandler:] + 228
8 CFNetwork 0x233b7f19 -[__NSCFLocalSessionTask _task_onqueue_didReceiveDispatchData:completionHandler:] + 292
9 CFNetwork 0x233f913f __48-[__NSCFURLLocalSessionConnection _tick_running]_block_invoke + 110
10 CFNetwork 0x233f859b -[__NSCFURLLocalSessionConnection withDelegateAndPendingCompletion:] + 190
11 CFNetwork 0x233f90c9 -[__NSCFURLLocalSessionConnection _tick_running] + 380
12 CFNetwork 0x233f870b __57-[__NSCFURLLocalSessionConnection afterDelegateWithTick:]_block_invoke + 146
13 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
14 libdispatch.dylib 0x22a39e7f _dispatch_queue_drain + 1762
15 libdispatch.dylib 0x22a32e17 _dispatch_queue_invoke + 282
16 libdispatch.dylib 0x22a3b20d _dispatch_root_queue_drain + 400
17 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
18 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
19 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#39. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#40. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#41. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#42. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#43. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#44. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#45. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#46. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#47. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#48. Thread
0 libsystem_pthread.dylib 0x22bce9f4 start_wqthread + 14
#49. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#50. com.pinterest.PINDiskCache.trash
0 CoreFoundation 0x22daba54 CFArrayGetCount
1 Foundation 0x236057f1 -[NSOperation init] + 104
2 Foundation 0x23631f07 +[NSFilesystemItemRemoveOperation filesystemItemRemoveOperationWithPath:] + 34
3 Foundation 0x23631e9b -[NSFileManager removeItemAtPath:error:] + 38
4 Foundation 0x23631e71 -[NSFileManager removeItemAtURL:error:] + 124
5 Pinterest 0x91d1ef __26+[PINDiskCache emptyTrash]_block_invoke (PINDiskCache.m:261)
6 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
7 libdispatch.dylib 0x22a39e7f _dispatch_queue_drain + 1762
8 libdispatch.dylib 0x22a32e17 _dispatch_queue_invoke + 282
9 libdispatch.dylib 0x22a3b20d _dispatch_root_queue_drain + 400
10 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
11 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
12 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#51. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#52. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#53. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#54. com.apple.root.default-qos
0 libsystem_kernel.dylib 0x22b179d8 syscall_thread_switch + 8
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
#55. com.apple.root.default-qos
0 libsystem_platform.dylib 0x22bcd6b8 _OSSpinLockLockSlow$VARIANT$wfe + 47
1 libsystem_platform.dylib 0x22bcd6af _OSSpinLockLockSlow$VARIANT$wfe + 38
2 Foundation 0x236057e7 -[NSOperation init] + 94
3 Foundation 0x23612723 -[NSBlockOperation init] + 42
4 Foundation 0x2364f15b -[NSBlockOperation initWithBlock:] + 26
5 Foundation 0x2364f12d +[NSBlockOperation blockOperationWithBlock:] + 40
6 Pinterest 0x93768f -[NSOperationQueue(PINRemoteImageManager) pin_addOperationWithQueuePriority:block:] (PINRemoteImageManager.m:1505)
7 Pinterest 0x9312f7 -[PINRemoteImageManager downloadImageWithURL:options:priority:processorKey:processor:progressImage:progressDownload:completion:inputUUID:] (PINRemoteImageManager.m:535)
8 Pinterest 0x930e2b -[PINRemoteImageManager downloadImageWithURL:options:progressDownload:completion:] (PINRemoteImageManager.m:427)
9 Pinterest 0x7d8735 -[ASPINRemoteImageDownloader downloadImageWithURL:callbackQueue:downloadProgress:completion:] (ASPINRemoteImageDownloader.m:176)
10 Pinterest 0x7d358f __51-[ASNetworkImageNode _downloadImageWithCompletion:]_block_invoke (ASNetworkImageNode.mm:416)
11 libdispatch.dylib 0x22a2fcbf _dispatch_call_block_and_release + 10
12 libdispatch.dylib 0x22a3b6a1 _dispatch_root_queue_drain + 1572
13 libdispatch.dylib 0x22a3b07b _dispatch_worker_thread3 + 94
14 libsystem_pthread.dylib 0x22bcee0d _pthread_wqthread + 1024
15 libsystem_pthread.dylib 0x22bce9fc start_wqthread + 8
Reactions are currently unavailable
Although it's not immediately clear why this is a deadlock rather than just a performance issue — it could be that it isn't a true deadlock and just stalled for too long — the current code does hold the instanceLock while calling into the downloader. We may need some other mechanism to "transactionalize" this code to ensure two calls to the downloader aren't started by the same node before the last call has finished, though.
The more important takeaway is that NSOperation uses a spinlock, and in profiles is always a top source of work on the main thread (competitive with and sometimes more than all UIView costs!) If this code could reduce its dependencies and not lock on internal operating system black-box stuff, then it would make sense to hold the instanceLock while calling into it.
At the moment, I believe the cases where this can deadlock include when the main thread is busy doing something that can block NSOperation or the Notifications / KVO locking that it acquires, and meanwhile the main thread's processing of that KVO or notification is accessing a node with a locked property.
https://fabric.io/pinterest6/ios/apps/pinterest/issues/57dbb2df0aeb16625b51df2c/sessions/8382232a6e494f7cbb49b78834f6c781_e396a725a18f44339369674db8b9b636_0_v1