Diagnostic code · ARA0504
Threads, locks or tasks
Gameplay code attempts to control concurrency outside the engine schedule. The edit is rejected; the last good code keeps running. Systems already execute over chunks on the engine's worker threads.
Common causes
- Using
System.Threadingor task APIs from a gameplay module. - Using
awaitorlockin gameplay code.
Fixes
Express parallel gameplay work as systems with declared component and resource accesses.
Keep asynchronous editor work in an editor module and pass resulting gameplay changes through typed commands.
Code:
ARA0504Constant:
cs::API_THREADINGReported by: Ara.Analyzers