1. A method in a shared processor data processing system for dynamically determining when to yield a processor that is assigned to perform particular work but that is currently idle, said method comprising: assigning a particular processor to perform work; determining whether said processor is currently idle; in response to determining whether said processor is currently idle, determining a length of time said processor has been idle; and in response to said length of time exceeding a threshold, yielding said processor to make said processor available to perform other work.