Patent ID: 7401112

Claim:
A method of processing transaction routing tasks, the method including: receiving a plurality of transaction requests at an automatic call distribution system; generating a respective transaction event responsive to receiving each of the transaction requests, the transaction event for routing the transaction request to an agent of the automatic call distribution system; responsive to the respective transaction events, identifying a respective workflow associated with each transaction event; assigning a workflow priority to at least one workflow; creating a respective task object for each of the transaction events and identified workflows; assigning a task priority to each respective task object based upon the workflow priority whenever a workflow priority has been assigned to the respective workflow, but otherwise based upon a priority of each respective event; queuing the task objects in a task object queue; distributing a task object of the task objects, which at least partially executes the workflow, from the task object queue to an available thread within a pool of available threads operating within a multiprocessor system based upon the task priority of the task object; identifying a processor affinity attributed to the distributed task object; and assigning the available thread to a processor within the multiprocessor system according to the processor affinity attributed to the distributed task object to route the transaction request to the agent of the automatic call distribution system.