Currently, the StateContainer class leverages dispatch queues to ensure that all state updates occur on the main thread and don't produce any blank frames (by attempting to synchronously queueing on the main thread). To comply with Swift 6's expectations and compiler supported multithreading enforcement, we should explore the possibility of converting StateContainer to use the actor system, if possible. If not possible, we should work to ensure that StateContainer complies with Swift 6's rules.
Problem Statement
Currently, the StateContainer class leverages dispatch queues to ensure that all state updates occur on the main thread and don't produce any blank frames (by attempting to synchronously queueing on the main thread). To comply with Swift 6's expectations and compiler supported multithreading enforcement, we should explore the possibility of converting StateContainer to use the actor system, if possible. If not possible, we should work to ensure that StateContainer complies with Swift 6's rules.
Proposed Solution
TBD
Alternatives Considered
TBD
Additional Context
TBD