I’m fairly new to threads, so I have a query. I notice that in AP_Terrain, void schedule_disk_io(void)
(and other related functions) runs in one thread, and void io_timer(void)
(and other related functions) runs in another thread. Both threads access the volatile enum DiskIoState disk_io_state
variable to coordinate disk access.
Is access to the disk_io_state
enum an atomic operation? I imagine it must be to prevent race conditions.
Thanks.