mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-08-06 13:58:40 +00:00
fix incorrect loop-again logic on async threads
This commit is contained in:
@@ -193,10 +193,10 @@ async_thread_entry_point(void *params)
|
|||||||
if(!ins_atomic_u32_eval(&async_loop_again))
|
if(!ins_atomic_u32_eval(&async_loop_again))
|
||||||
{
|
{
|
||||||
MutexScope(async_tick_start_mutex) cond_var_wait(async_tick_start_cond_var, async_tick_start_mutex, os_now_microseconds()+100000);
|
MutexScope(async_tick_start_mutex) cond_var_wait(async_tick_start_cond_var, async_tick_start_mutex, os_now_microseconds()+100000);
|
||||||
if(lane_idx() == 0)
|
}
|
||||||
{
|
else if(lane_idx() == 0)
|
||||||
async_loop_again = 0;
|
{
|
||||||
}
|
async_loop_again = 0;
|
||||||
}
|
}
|
||||||
#if defined(CONTENT_H)
|
#if defined(CONTENT_H)
|
||||||
c_tick();
|
c_tick();
|
||||||
|
|||||||
@@ -97,6 +97,7 @@ tex_texture_from_hash_topology(Access *access, U128 hash, TEX_Topology topology)
|
|||||||
n->v.top = topology;
|
n->v.top = topology;
|
||||||
tex_shared->req_count += 1;
|
tex_shared->req_count += 1;
|
||||||
}
|
}
|
||||||
|
cond_var_broadcast(async_tick_start_cond_var);
|
||||||
}
|
}
|
||||||
|
|
||||||
// rjf: node? -> grab & access
|
// rjf: node? -> grab & access
|
||||||
|
|||||||
@@ -109,4 +109,4 @@ internal R_Handle tex_texture_from_key_topology(Access *access, C_Key key, TEX_T
|
|||||||
|
|
||||||
internal void tex_tick(void);
|
internal void tex_tick(void);
|
||||||
|
|
||||||
#endif //TEXTURE_CACHE_H
|
#endif // TEXTURE_CACHE_H
|
||||||
|
|||||||
Reference in New Issue
Block a user