Thank you very much for responding! However, based on @dave_59 ’s response on this other Verification Academy post linked below, it seems like when simulation is spread across multiple cores, multiple threads may in fact be running in parallel as opposed to having only one active thread at a time.
Given this information, can it still not happen that the driver() task in the driver (executing on another core in parallel) ends up calling item_done in between the sequencer calling stop_sequences() and the run_phase of the driver killing the driver() task?