1. A virtual queue method for allocating tasks by a dispatcher algorithm to switching queues of individual processors in a multiprocessor computer system, said method comprising; a) allowing a user to establish priority for tasks to be allocated to individual processor switching queues, b) placing a value, indicating a priority for each said task queued for an said individual processor for on said individual processor switching queues, said value being associated with said user established priority, c) placing a reference for a highest priority task of said each task having a queued value on said individual processor switching queue, from each said individual processor switching queue onto a virtual queue, d) at a time a given processor is ready to perform a task, searching said virtual queue for a said reference for any tasks which may have a higher priority than any priority value that currently exists on said given processor's individual processor switching queue, and e) if a task reference on said virtual queue has a higher priority than task priority values existing on said given processor's individual processor switching queue, plucking said task from said virtual queue and, running said plucked task on said given processor, else, if no task reference on said virtual queue has a higher priority than at least one task priority on said given processor's individual processor switching queue, running a one of said at least one tasks from said given processor's individual processor switching queue.