MCPcopy Create free account
hub / github.com/cameron314/concurrentqueue / DllMain

Function DllMain

benchmarks/tbb/tbb_main.cpp:246–265  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

244#if (_WIN32||_WIN64) && !__TBB_SOURCE_DIRECTLY_INCLUDED
245//! Windows "DllMain" that handles startup and shutdown of dynamic library.
246extern "C" bool WINAPI DllMain( HANDLE /*hinstDLL*/, DWORD reason, LPVOID /*lpvReserved*/ ) {
247 switch( reason ) {
248 case DLL_PROCESS_ATTACH:
249 __TBB_InitOnce::add_ref();
250 break;
251 case DLL_PROCESS_DETACH:
252 __TBB_InitOnce::remove_ref();
253 // It is assumed that InitializationDone is not set after DLL_PROCESS_DETACH,
254 // and thus no race on InitializationDone is possible.
255 if( __TBB_InitOnce::initialization_done() ) {
256 // Remove reference that we added in DoOneTimeInitializations.
257 __TBB_InitOnce::remove_ref();
258 }
259 break;
260 case DLL_THREAD_DETACH:
261 governor::terminate_auto_initialized_scheduler();
262 break;
263 }
264 return true;
265}
266#endif /* (_WIN32||_WIN64) && !__TBB_SOURCE_DIRECTLY_INCLUDED */
267
268void itt_store_pointer_with_release_v3( void* dst, void* src ) {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected