Change 6130b2137d causes stop() to wait until the worker thread leaves run(). run() calls updateFiles(), which might call stop() ...
Sampling process 59567 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling Qt Creator (pid 59567) every 1 millisecond
Call graph:
2212 Thread_3838830 DispatchQueue_1: com.apple.main-thread (serial)
2212 start
2212 main
2212 ExtensionSystem::PluginManager::~PluginManager()
2212 ExtensionSystem::Internal::PluginManagerPrivate::~PluginManagerPrivate()
2212 ExtensionSystem::Internal::PluginManagerPrivate::stopAll()
2212 ExtensionSystem::Internal::PluginManagerPrivate::loadPlugin(ExtensionSystem::PluginSpec*, ExtensionSystem::PluginSpec::State)
2212 ExtensionSystem::Internal::PluginSpecPrivate::stop()
2212 ProjectExplorer::ProjectExplorerPlugin::shutdown()
2212 ProjectExplorer::SessionManager::clear()
2212 ProjectExplorer::SessionManager::removeProjects(QList<ProjectExplorer::Project*>)
2212 Qt4ProjectManager::Qt4Project::~Qt4Project()
2212 ProjectExplorer::Project::~Project()
2212 QObject::~QObject()
2212 QObjectPrivate::deleteChildren()
2212 Qt4ProjectManager::Internal::Qt4ProFileNode::~Qt4ProFileNode()
2212 Qt4ProjectManager::Internal::Qt4PriFileNode::~Qt4PriFileNode()
2212 ProjectExplorer::ProjectNode::~ProjectNode()
2212 ProjectExplorer::FolderNode::~FolderNode()
2212 ProjectExplorer::Node::~Node()
2212 QObject::~QObject()
2212 QObjectPrivate::deleteChildren()
2212 Qt4ProjectManager::Internal::Qt4PriFile::~Qt4PriFile()
2212 Core::IFile::~IFile()
2212 QObject::~QObject()
2212 QObject::destroyed(QObject*)
2212 QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
2212 Core::FileManager::qt_metacall(QMetaObject::Call, int, void**)
2212 Core::FileManager::fileDestroyed(QObject*)
2212 Core::FileManager::removeFileInfo(Core::IFile*)
2212 Core::FileManager::removeFileInfo(QString const&, Core::IFile*)
2212 QFileSystemWatcher::removePath(QString const&)
2212 QFileSystemWatcher::removePaths(QStringList const&)
2212 QFSEventsFileSystemWatcherEngine::removePaths(QStringList const&, QStringList*, QStringList*)
2212 QWaitCondition::wait(QMutex*, unsigned long)
2212 _pthread_cond_wait
2212 __semwait_signal
2212 Thread_3838833 DispatchQueue_2: com.apple.libdispatch-manager (serial)
2212 start_wqthread
2212 _pthread_wqthread
2212 _dispatch_worker_thread2
2212 _dispatch_queue_invoke
2212 _dispatch_mgr_invoke
2212 kevent
2212 Thread_3838843
2212 thread_start
2212 _pthread_start
2212 __CFSocketManager
2212 select$DARWIN_EXTSN
2212 Thread_3838844
2212 thread_start
2212 _pthread_start
2212 ne7ssh::selectThread(void*)
2190 usleep
2186 nanosleep
2184 __semwait_signal
2 __spin_lock
2 cerror
1 cerror
1 cthread_set_errno_self
2 dyld_stub___error
14 __bzero
3 ne7ssh::lock()
3 Ne7ssh_Mutex::lock()
3 pthread_mutex_lock
2 pthread_mutex_lock
1 _spin_lock
3 ne7ssh::unlock()
3 Ne7ssh_Mutex::unlock()
2 __spin_lock
1 pthread_mutex_unlock
2 ne7ssh::selectThread(void*)
2212 Thread_3838845
2212 thread_start
2212 _pthread_start
2212 QThreadPrivate::start(void*)
2212 QProcessManager::run()
2212 select$DARWIN_EXTSN
2212 Thread_3838847
2212 thread_start
2212 _pthread_start
2212 QTWTF::TCMalloc_PageHeap::runScavengerThread(void*)
2212 QTWTF::TCMalloc_PageHeap::scavengerThread()
2212 _pthread_cond_wait
2212 __semwait_signal
2212 Thread_3838848
2212 thread_start
2212 _pthread_start
2212 WTF::TCMalloc_PageHeap::runScavengerThread(void*)
2212 WTF::TCMalloc_PageHeap::scavengerThread()
2212 _pthread_cond_wait
2212 __semwait_signal
2212 Thread_3856403
2212 thread_start
2212 _pthread_start
2212 QThreadPrivate::start(void*)
2212 QFSEventsFileSystemWatcherEngine::run()
2212 QFSEventsFileSystemWatcherEngine::updateFiles()
2212 QFSEventsFileSystemWatcherEngine::stop()
2212 QMutex::lock()
2212 QMutexPrivate::wait(int)
2212 _pthread_cond_wait
2212 __semwait_signal
Total number in stack (recursive counted multiple, when >=5):
6 _pthread_start
6 thread_start
5 __semwait_signal
Sort by top of stack, same collapsed (when >= 5):
__semwait_signal 11032
select$DARWIN_EXTSN 4424
kevent 2212
__bzero 14
Sample analysis of process 59567 written to file /dev/stdout