2
0

Update gotcha submodule from timemory (#277)

* Update gotcha submodule from timemory

* Fix build failure and add copilot suggestions

* Fix formatting errors
Este cometimento está contido em:
Sajina PK
2025-07-14 21:12:10 -04:00
cometido por GitHub
ascendente c996c23a13
cometimento d26486ad83
3 ficheiros modificados com 26 adições e 2 eliminações
@@ -411,7 +411,30 @@ pthread_create_gotcha::shutdown()
{
// skip sending signals to internal threads
if(internal_native_handles.count(itr) != 0) continue;
if(pthread_equal(pthread_self(), itr) == 0 && pthread_equal(itr, itr) != 0)
bool has_bundle = false;
std::unique_lock<std::mutex> _bundle_lk{ *bundles_mutex };
const auto& thread_info = thread_info::get(itr);
// Check if this thread has a corresponding bundle entry
// With the new gotcha update more external threads are tracked
// but we only want to send signals to threads that have bundles
for(const auto& bundle_itr : *bundles)
{
try
{
if(thread_info && thread_info->index_data &&
bundle_itr.first == thread_info->index_data->sequent_value)
{
has_bundle = true;
break;
}
} catch(...)
{
continue;
}
}
if(has_bundle && pthread_equal(pthread_self(), itr) == 0)
{
::pthread_kill(itr, shutdown_signal_v);
++_expected_shutdown_signals_delivered;