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.