In the operation of a computer, a plurality of
bytecode or
pseudocode instructions, at least some of the
pseudocode instructions comprising a plurality of
machine code instructions, are stored in a
computer memory. For each of a plurality of tasks or jobs to be performed by the computer, a respective virtual thread of execution
context data is automatically created. The virtual threads each include (a) a memory location of a next one of the
pseudocode instructions to be executed in carrying out the respective task or job and (b) the values of any local variables required for carrying out the respective task or job. At least some of the tasks or jobs each entails execution of a respective one of the pseudocode instructions comprising a plurality of
machine language instructions. Each of the tasks or jobs are processed in a respective series of time slices or
processing slots under the control of the respective virtual thread, and, in every
context switch between different virtual threads, such
context switch is undertaken only after completed execution of a currently executing one of the pseudocode instructions.