Re: Shark and dlopen(): debug symbols, "unknown library"
Re: Shark and dlopen(): debug symbols, "unknown library"
- Subject: Re: Shark and dlopen(): debug symbols, "unknown library"
- From: Guido Lorenz <email@hidden>
- Date: Fri, 17 Apr 2009 22:58:54 +0200
To keep the overhead during the sampling low, Shark only collects
symbol information at either the end of sampling or when the process
terminates, whichever comes first. Shark looks at the dyld loaded
library list to determine what is in a given process space and where
it was loaded. If you dlopen() your plugin during the session and
dlclose() it before the session is stopped (and analysis has
finished), Shark won't know that it was loaded. We are aware that
this causes problems for applications that are aggressive about
unloading plugins.
Thanks for the explanation. But if i understand correctly, this does
not cause my problem. The application loads the plugin on startup, and
dlclose() is not called at all. I start the application, attach Shark
to the running process and run a profiling session. I also keep the
application (which is still using the plugin) running while Shark
analyses the samples. That should be enough for Shark to find the
plugin library, or did I miss something? Launching the application
from within Shark does not make a difference, by the way.
// Guido
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Xcode-users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden