ErrorHandler* ErrorHandler::defaultHandler() { // NOTE: Since this is called to initialize the static _pHandler // variable, sh has to be a local static, otherwise we run // into static initialization order issues. static SingletonHolder<ErrorHandler> sh; return sh.get(); }
Reactor& Reactor::instance() { static SingletonHolder<Reactor> sh; Reactor* p = sh.get(); Reactor& tmp = *p; return tmp; }
ThreadLocalStorage& ThreadLocalStorage::current() { Thread* pThread = Thread::current(); if (pThread) { return pThread->tls(); } else { static SingletonHolder<ThreadLocalStorage, FastMutex> sh; return *sh.get(); } }
LoggingRegistry& LoggingRegistry::defaultRegistry() { static SingletonHolder<LoggingRegistry> sh; return *sh.get(); }
URIStreamOpener& URIStreamOpener::defaultOpener() { static SingletonHolder<URIStreamOpener> sh; return *sh.get(); }
PriorityNotificationQueue& PriorityNotificationQueue::defaultQueue() { static SingletonHolder<PriorityNotificationQueue> sh; return *sh.get(); }
LoggingFactory& LoggingFactory::defaultFactory() { static SingletonHolder<LoggingFactory> sh; return *sh.get(); }
TextEncodingManager& TextEncoding::manager() { static SingletonHolder<TextEncodingManager> sh; return *sh.get(); }