1. In a computer system having one or more processors coupled to a memory, a method for multi-threaded processing, comprising: notifying one or more of the processors running a first thread or thread group of a pre-emption by a second thread or thread group characterized by a higher priority than the first thread; notifying the one or more of the processors of a time limit for pre-emption associated with the second thread or thread group; and yielding the one or more of the processors to the second thread or thread group within the time limit without saving a context of the first thread or thread group if the first thread or thread group can wind up within the time limit, or performing a context switch from the first thread or thread group to the second thread or thread group if the first thread or thread group cannot wind up within the time limit.