MCPcopy Create free account
hub / github.com/GaijinEntertainment/daScript / shutdownThreadLocalDebugAgent

Function shutdownThreadLocalDebugAgent

src/runtime/context.cpp:972–985  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

970 }
971
972 void shutdownThreadLocalDebugAgent() {
973 bool hasThreadLocal = *daScriptEnvironment::g_threadLocalDebugAgent && (*daScriptEnvironment::g_threadLocalDebugAgent)->debugAgent;
974 if ( hasThreadLocal ) {
975 DebugAgent * threadLocalDebugAgent = (*daScriptEnvironment::g_threadLocalDebugAgent)->debugAgent.get();
976 for_each_debug_agent([&](const DebugAgentPtr & pAgent){
977 pAgent->onUninstall(threadLocalDebugAgent);
978 });
979 {
980 std::lock_guard<std::recursive_mutex> guard(g_DebugAgentMutex);
981 delete (*daScriptEnvironment::g_threadLocalDebugAgent);
982 (*daScriptEnvironment::g_threadLocalDebugAgent) = {};
983 }
984 }
985 }
986
987 void Context::triggerHwBreakpoint ( void * addr, int index ) {
988 singleStepMode = true;

Callers 2

new_thread_invokeFunction · 0.85
new_debugger_threadFunction · 0.85

Calls 3

for_each_debug_agentFunction · 0.85
getMethod · 0.45
onUninstallMethod · 0.45

Tested by

no test coverage detected