move module image info parse / cache management to ctrl thread, directly tie to module lifetime as ctrl thread sees it; reduce load from each unwind

This commit is contained in:
Ryan Fleury
2024-05-20 10:58:45 -07:00
parent 2d1fcd7475
commit 9919ac59bb
4 changed files with 330 additions and 172 deletions
+1 -1
View File
@@ -6233,7 +6233,7 @@ df_query_cached_unwind_from_thread(DF_Entity *thread)
//- rjf: no node? -> calculate unwind if needed - store if good & return
if(node == 0)
{
CTRL_Unwind current_unwind = ctrl_unwind_from_thread(scratch.arena, df_state->ctrl_entity_store, thread->ctrl_machine_id, thread->ctrl_handle, 0);
CTRL_Unwind current_unwind = ctrl_unwind_from_thread(scratch.arena, df_state->ctrl_entity_store, thread->ctrl_machine_id, thread->ctrl_handle, os_now_microseconds()+200);
if(!(current_unwind.flags & (CTRL_UnwindFlag_Error|CTRL_UnwindFlag_Stale)))
{
Architecture arch = df_architecture_from_entity(thread);