Quick answer: Unity Burst job accessing a static field of a managed class throwing? Statics aren't Burst-compatible - mark with [SharedStatic] or use SharedStatic API.

Job references a config static; compile fails with 'managed reference'.

Use SharedStatic

static readonly SharedStatic<int> Cfg = SharedStatic<int>.GetOrCreate<Key>();

Burst-compatible shared statics. Pinned in memory.

Or pass via job field

Capture the static value into a job field at scheduling. Job reads its own field.

Audit static reads in jobs

Each static reference is a candidate for SharedStatic conversion.

“Burst statics are SharedStatic. Managed statics aren't.”

If your jobs reach for statics, the SharedStatic refactor is mandatory. The fix is one-time per static.

Related reading