Note: Dispatcher can choose to run each thread to completion,
or time-slice in big chunks, or time slice so that each thread executes only one
instruction at a time (simulating a multiprocessor, where each CPU
operates in lockstep).
If this is possible, programs must work under all cases, for all interleavings!!!.
How can you know whether all interleavings will work ? and more importantly,
how do you know if your concurrent program works ?
Omer F Rana