1. A method for allocating computing resources to tasks, comprising the steps of: receiving first data that indicates a limit for unblocked execution by a processor of a set of at least one task that includes a plurality of instructions for the processor; receiving second data that indicates a maximum use of the processor by the set; determining whether a particular set of at least one task has exceeded the limit for unblocked execution based on the first data; and if it determined that the particular set has exceeded the limit, then blocking execution of the particular set by the processor for a yield time interval based on the second data.