1. An information handling apparatus comprising: at least one processor including at least: one or more entitlement vectors configured to allocate one or more user-specified rights to one or more resources used by one or more threads, wherein the one or more entitlement vectors are respectively associated with the one or more threads; one or more instruction pointers configured to indicate a respective one or more threads of the one or more threads for execution; a scheduler configured to schedule the respective one or more threads for execution based at least partly on comparison of a resource entitlement as allocated by the one or more entitlement vectors, and configured to assign priority among the respective one or more threads; and logic used by the scheduler to schedule one of the one or more threads, wherein the one or more of the entitlement vectors respectively associated with the respective one or more of the threads, one or more weights, and one or more resource usage levels are arguments used by the logic, and for a selected thread priority i is determined at least partly by a comparison of weight i ×entitlement vector i entitlement to resource usage level i over a plurality of cycles i.