Mechanism for evaluating requests prior to disposition in a multi-threaded environment
First Claim
1. A computer implemented method for carrying out request disposition, comprising:
- receiving a first request for service;
selecting a first thread pool to be used to service said request;
invoking a first evaluation function associated with said first thread pool, said first evaluation function performing a first evaluation of said first request prior to an assignment of a thread from said first thread pool to said first request;
disposing of said first request in accordance with said first evaluation;
receiving a second request for service, said second request being serviceable using a thread from a second thread pool;
invoking a second evaluation function associated with said second thread pool, said second evaluation function performing a second evaluation of said second request; and
disposing of said second request in accordance with said second evaluation;
wherein said first thread pool differs from said second thread pool, and said first evaluation function differs from said second evaluation function.
3 Assignments
0 Petitions
Accused Products
Abstract
A mechanism is provided for enabling a request to be evaluated prior to the request being disposed. Particularly, an evaluation function is associated with a thread pool. Whenever a thread is to be assigned from that thread pool, the evaluation function may be invoked. The evaluation function may be invoked in response to one or more conditions being satisfied, or it may be invoked each time a thread is needed from that thread pool. When invoked, the evaluation function performs an evaluation on the request. Based upon the evaluation, the evaluation function may take one or more actions. For example, if the evaluation function determines that the request is a high priority request, then it may ensure that the request will be processed regardless of system workload. The evaluation function is user specifiable; thus, it may be programmed to perform any desired operations, and to take any desired considerations and factors into account. Overall, the evaluation function gives a user great freedom in determining how to dispose of a request.
-
Citations
36 Claims
-
1. A computer implemented method for carrying out request disposition, comprising:
-
receiving a first request for service;
selecting a first thread pool to be used to service said request;
invoking a first evaluation function associated with said first thread pool, said first evaluation function performing a first evaluation of said first request prior to an assignment of a thread from said first thread pool to said first request;
disposing of said first request in accordance with said first evaluation;
receiving a second request for service, said second request being serviceable using a thread from a second thread pool;
invoking a second evaluation function associated with said second thread pool, said second evaluation function performing a second evaluation of said second request; and
disposing of said second request in accordance with said second evaluation;
wherein said first thread pool differs from said second thread pool, and said first evaluation function differs from said second evaluation function. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. An apparatus for carrying out request disposition, comprising:
-
a mechanism for receiving a first request for service;
a mechanism for selecting a first thread pool to be used to service said first request;
a mechanism for invoking a first evaluation function associated with said first thread pool, said first evaluation function performing a first evaluation of said first request prior to an assignment of a thread from said first thread pool to said first request;
a mechanism for disposing of said first request in accordance with said first evaluation;
a mechanism for receiving a second request for service, said second request being serviceable using a thread from a second thread pool;
a mechanism for invoking a second evaluation function associated with said second thread pool, said second evaluation function performing a second evaluation of said second request; and
a mechanism for disposing of said second request in accordance with said second evaluation;
wherein said first thread pool differs from said second thread pool, and said first evaluation function differs from said second evaluation function. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24)
-
-
25. A computer readable medium having stored thereon instructions which, when executed by one or more processors, cause the one or more processors to carry out request disposition, said computer readable medium comprising:
-
instructions for causing one or more processors to receive a first request for service;
instructions for selecting a first thread pool to be used to service said first request;
instructions for causing one or more processors to invoke a first evaluation function associated with said first thread pool, said evaluation function performing a first evaluation of said first request prior to an assignment of a thread from said first thread pool to said first request;
instructions for causing one or more processors to dispose of said request in accordance with said first evaluation;
instructions for causing one or more processors to receive a second request for service, said second request being serviceable using a thread from a second thread pool;
instructions for causing one or more processors to invoke a second evaluation function associated with said second thread pool, said second evaluation function performing a second evaluation of said second request; and
instructions for causing one or more processors to dispose of said second request in accordance with said second evaluation;
wherein said first thread pool differs from said second thread pool, and said first evaluation function differs from said second evaluation function. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
Specification