I often find Safari blocking because of some plugin taking too much time. The usual culrpit is Quicktime. I decided to run Spin Control today and got a block of 158 seconds. I wouldn't be surprised of many people would have opted for a 'force-quit' beyond the 60 second mark. Anyhow
here is the output from 'Spin Control':

Call graph:
    15864 Thread_6603
      15864 0x5ca94
        15864 0x5cbf0
          15864 NSApplicationMain
            15864 -[NSApplication run]
              15864 0x6e74
15864 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
                  15864 _DPSNextEvent
                    15864 BlockUntilNextEventMatchingListInMode
                      15864 ReceiveNextEventCommon
                        15864 RunCurrentEventLoopInMode
                          15864 CFRunLoopRunSpecific
                            15864 __CFRunLoopRun
                              15864 __CFRunLoopDoTimer
                                15864 __NSFireTimer
                                  15864 +[QTMovie idleAllMovies:]
                                    15864 CFSetApplyFunction
                                      15864 -[QTMovie idle]
                                        15864 NPN_GetValue
                                          15864 NPN_GetValue
                                            15864 NPN_GetValue
15864 WebHelper_Private_HandleEvent
                                                15864 NPP_HandleEvent
                                                  15864 MCHandleEvent
                                                    15864 CallComponent
15864 CallComponentFunctionCommon 15864 _MCHandleEvent 15864 MCIsPlayerEvent 15864 CallComponent 15864 CallComponentFunctionCommon 15864 _MCIsPlayerEvent 15864 internalDoAction 15864 doIdleMovie 1 5864 TaskMovie_priv 15864 MediaMoviesTask 15864 CallComponent 15864 MPEGMediaDispatcher 15864 CallComponent 15864 CallComponentFunctionCommon 15864 GenericMoviesTask 15864 doGenericIdle 15864 MediaIdle 15864 CallComponent 15864 MPEGMediaDispatcher 15864 MPEGMediaIdle 15864 ReallyIdle 15864 SHDecodeIdle 15864 CallComponent 15864 MPEGSystemDispatcher 15864 MPEGSystemIdle 15864 QTYieldToThread 15864 pthread_cond_wait 15864 semaphore_wait_signal_trap 15864 semaphore_wait_signal_trap
    15864 Thread_6703
      15864 _pthread_body
        15864 __ape_agent
          15864 __ape_internal
            15864 mach_msg
              15864 mach_msg_trap
                15864 mach_msg_trap
    15864 Thread_6803
      15864 _pthread_body
        15864 ah_serv_loop
          15864 mach_msg
            15864 mach_msg_trap
              15864 mach_msg_trap
    15864 Thread_6903
      15864 _pthread_body
        15864 forkThreadForFunction
          15864 +[WebFileDatabase _syncLoop:]
            15864 -[NSRunLoop run]
              15864 -[NSRunLoop runMode:beforeDate:]
                15864 CFRunLoopRunSpecific
                  15864 __CFRunLoopRun
                    15864 mach_msg
                      15864 mach_msg_trap
                        15864 mach_msg_trap
    15864 Thread_6a03
      15864 _pthread_body
        15864 forkThreadForFunction
15864 +[NSURLConnection(NSURLConnectionInternal) _resourceLoadLoop:]
            15864 CFRunLoopRunSpecific
              15864 __CFRunLoopRun
                15864 mach_msg
                  15864 mach_msg_trap
                    15864 mach_msg_trap
    15864 Thread_6b03
      15864 _pthread_body
        15864 forkThreadForFunction
          15864 +[NSURLCache _diskCacheSyncLoop:]
            15864 CFRunLoopRunSpecific
              15864 __CFRunLoopRun
                15864 mach_msg
                  15864 mach_msg_trap
                    15864 mach_msg_trap
    15864 Thread_6c03
      15864 _pthread_body
        15864 forkThreadForFunction
          15864 -[AsyncDB _run:]
            15864 -[NSConditionLock lockWhenCondition:]
              15864 pthread_cond_wait
                15864 semaphore_wait_signal_trap
                  15864 semaphore_wait_signal_trap
    15864 Thread_6d03
      15864 _pthread_body
        15864 __CFSocketManager
          15864 select
            15864 select
    15864 Thread_6e03
      15864 _pthread_body
        15864 forkThreadForFunction
          15864 -[NSUIHeartBeat _heartBeatThread:]
            15864 -[NSConditionLock lockWhenCondition:]
              15864 pthread_cond_wait
                15864 semaphore_wait_signal_trap
                  15864 semaphore_wait_signal_trap
    15864 Thread_6f03
      15864 _pthread_body
        15864 QTSNetworkThread_RunThread
          15864 CFRunLoopRun
            15864 CFRunLoopRunSpecific
              15864 __CFRunLoopRun
                15864 mach_msg
                  15864 mach_msg_trap
                    15864 mach_msg_trap
    15864 Thread_7003
      15864 _pthread_body
        15864 CAPThread::Entry(CAPThread*)
          15864 HALRunLoop::OwnThread(void*)
            15864 CFRunLoopRunSpecific
              15864 __CFRunLoopRun
                15864 mach_msg
                  15864 mach_msg_trap
                    15864 mach_msg_trap
    15864 Thread_7103
      15864 _pthread_body
        15864 CAPThread::Entry(CAPThread*)
          15864 HP_IOThread::ThreadEntry(HP_IOThread*)
            15864 HP_IOThread::WorkLoop()
              15864 CAGuard::WaitUntil(unsigned long long)
                15864 CAGuard::WaitFor(unsigned long long)
                  15864 pthread_cond_timedwait_relative_np
                    15863 restore_sem_to_pool
                      15863 restore_sem_to_pool
                    1 semaphore_timedwait_signal_trap
                      1 semaphore_timedwait_signal_trap
    15864 Thread_7203
      15864 _pthread_body
        15864 TimerThread
          15864 TSWaitOnSemaphoreCommon
            15864 pthread_cond_timedwait_relative_np
              15864 semaphore_timedwait_signal_trap
                15864 semaphore_timedwait_signal_trap
    15864 Thread_7303
      15864 _pthread_body
        15864 MacThreadFunc
          15864 VideoThreadEntry
            15864 ReallyDecodeThePicture
              15864 CalcSourceAndDestPtrs
                15864 CalcSourceAndDestPtrs
    15864 Thread_7403
      15864 _pthread_body
        15864 MacThreadFunc
          15864 AudioThreadEntry
            15864 S_MpaAdvanceToNextStartCode
              15864 AudioWaitForBufferFullness
                15864 QTYieldToThread
                  15864 pthread_cond_wait
                    15864 semaphore_wait_signal_trap
                      15864 semaphore_wait_signal_trap
    15864 Thread_7503
      15864 _pthread_body
        15864 MacThreadFunc
          15864 SystemThreadEntry
            15864 S_DecodeVideoPacket2
              15864 SHDecodeIdle
                15864 CallComponent
                  15864 MPEGVideoDispatcher
                    15864 MPEGVideoIdle
                      15864 QTYieldToThread
                        15864 pthread_cond_wait
                          15864 semaphore_wait_signal_trap
                            15864 semaphore_wait_signal_trap
    15864 Thread_7603
      15864 _pthread_body
        15864 DeferredTaskThread
          15864 TSWaitOnSemaphoreCommon
            15864 pthread_cond_timedwait_relative_np
              15864 semaphore_timedwait_signal_trap
                15864 semaphore_timedwait_signal_trap

Total number in stack (recursive counted multiple, when >=5):
        16       _pthread_body
        7       CallComponent
        7       mach_msg
        7       mach_msg_trap
        6       CFRunLoopRunSpecific
        6       __CFRunLoopRun
        5       forkThreadForFunction
        5       pthread_cond_wait
        5       semaphore_wait_signal_trap

Sort by top of stack, same collapsed (when >= 5):
        mach_msg_trap        111048
        semaphore_wait_signal_trap        79320
        semaphore_timedwait_signal_trap        31729
        CalcSourceAndDestPtrs        15864
        select        15864
        restore_sem_to_pool        15863


_______________________________________________
webkit-dev mailing list
[email protected]
http://www.opendarwin.org/mailman/listinfo/webkit-dev

Reply via email to