Refactor JobExecutionContext, add scheduler state support

- Refactored JobExecutionContext to use init-only properties and added State and SelfHandle for richer context.
- Updated JobInfo field layout for clarity and memory alignment.
- JobScheduler now accepts and exposes an optional state object, passed to each job context.
- Improved memory management by using _freeList for allocations and disposal.
- WorkerThread and benchmarks updated to use new JobExecutionContext pattern.
- Bumped version to 1.6.1 and performed minor code cleanup.
This commit is contained in:
2026-04-17 19:49:42 +09:00
parent ebee3bb7fb
commit d5616daa05
8 changed files with 164 additions and 32 deletions

View File

@@ -275,8 +275,7 @@ public unsafe class TestJobSystem
height = size,
};
var ctx = new JobExecutionContext(-1, s_jobScheduler);
vectorJob.Run(size * size, in ctx);
vectorJob.Run(size * size, default);
var spmdBuf = stackalloc float[size * size];
var ss = new Span<float>(spmdBuf, size * size);