Re: -validateMenuItem: like crazy, hogs CPU for 1st minute
Re: -validateMenuItem: like crazy, hogs CPU for 1st minute
- Subject: Re: -validateMenuItem: like crazy, hogs CPU for 1st minute
- From: Jerry Krinock <email@hidden>
- Date: Fri, 19 Mar 2010 12:10:22 -0700
I just realized I should have included the Sampler output. Here it is. You see after the 1643 samples of MenuData::GetNamedAccessibleAttributeSelf, it breaks into two branches, both of which end up in -validateMenuItem:
Analysis of sampling pid 25997 every 1 millisecond
1691 Thread_798599 DispatchQueue_1: com.apple.main-thread (serial)
1691 start
1691 main
1691 NSApplicationMain
1691 -[NSApplication run]
1665 -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:]
1664 _DPSNextEvent
1663 BlockUntilNextEventMatchingListInMode
1663 ReceiveNextEventCommon
1660 RunCurrentEventLoopInMode
1660 CFRunLoopRunInMode
1660 CFRunLoopRunSpecific
1660 __CFRunLoopRun
1643 mshMIGPerform
1643 _XCopyAttributeValue
1643 _AXXMIGCopyAttributeValue
1643 CopyAttributeValue
1643 CopyCarbonUIElementAttributeValue
1643 CarbonCopyAttributeValueCallback(__CFData const*, unsigned long, __CFString const*, void const**, void*)
1643 HLTBCopyUIElementAttributeValue
1643 Accessible::GetNamedAttributeData(__CFString const*, void const*, void const**, unsigned char*)
1643 Accessible::SendEvent(OpaqueEventRef*, bool) const
1643 SendEventToEventTargetWithOptions
1643 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)
1643 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)
1643 HIObject::EventHook(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)
1643 HIObject::HandleClassAccessibilityEvent(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)
1643 HIObject::DispatchAccessibilityEvent(OpaqueEventRef*, unsigned long long, AccessibilityHandlers const*, void*)
1643 MenuData::GetNamedAccessibleAttributeSelf(unsigned long long, __CFString const*, unsigned long, OpaqueEventRef*)
876 HLTBCopyUIElementAttributeValue
876 Accessible::GetNamedAttributeData(__CFString const*, void const*, void const**, unsigned char*)
876 Accessible::SendEvent(OpaqueEventRef*, bool) const
876 SendEventToEventTargetWithOptions
876 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)
876 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)
876 MenuData::MenuContentViewAccessibilityHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)
876 HIObject::DispatchAccessibilityEvent(OpaqueEventRef*, unsigned long long, AccessibilityHandlers const*, void*)
876 MenuData::ContentViewGetNamedAccessibleAttribute(unsigned long long, __CFString const*, unsigned long, OpaqueEventRef*, void*)
876 MenuData::HandleGetNamedAccessibleAttribute(unsigned long long, __CFString const*, unsigned long, OpaqueEventRef*)
876 OpenMenuForInspection(MenuData*)
876 _SimulateMenuOpening
876 SendMenuOpening(MenuSelectData*, MenuData*, double, unsigned long, __CFDictionary*, unsigned char, unsigned char*)
876 SendEventToEventTarget
876 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)
876 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)
876 HIApplication::EventHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)
876 UpdateHICommandStatusWithCachedEvent
876 SendHICommandEvent(unsigned long, HICommand const*, unsigned long, unsigned long, unsigned char, void const*, OpaqueEventTargetRef*, OpaqueEventTargetRef*, OpaqueEventRef**)
875 SendEventToEventTarget
875 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)
875 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)
875 NSSLMMenuEventHandler
861 -[NSCarbonMenuImpl _carbonUpdateStatusEvent:handlerCallRef:]
861 -[NSMenu _enableItem:]
861 -[BkmxAppDel(Actions) validateMenuItem:]
767 MenuData::HandleGetNamedAccessibleAttribute(unsigned long long, __CFString const*, unsigned long, OpaqueEventRef*)
767 OpenMenuForInspection(MenuData*)
767 _SimulateMenuOpening
767 SendMenuOpening(MenuSelectData*, MenuData*, double, unsigned long, __CFDictionary*, unsigned char, unsigned char*)
767 SendEventToEventTarget
767 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)
767 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)
767 HIApplication::EventHandler(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)
767 UpdateHICommandStatusWithCachedEvent
767 SendHICommandEvent(unsigned long, HICommand const*, unsigned long, unsigned long, unsigned char, void const*, OpaqueEventTargetRef*, OpaqueEventTargetRef*, OpaqueEventRef**)
767 SendEventToEventTarget
767 SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*)
767 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*)
767 NSSLMMenuEventHandler
747 -[NSCarbonMenuImpl _carbonUpdateStatusEvent:handlerCallRef:]
747 -[NSMenu _enableItem:]
747 -[BkmxAppDel(Actions) validateMenuItem:]
_______________________________________________
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