The Cache Cleaning Process releases service requesters and service objects that have been inactive for a certain period of time. The process removes timeout service requesters from the service requester factory, removes timeout non-Poolable service objects from the service holder, and releases timeout Poolable service objects in the Generic Pool for forthcoming requests. This optimizes the memory utilization.
The toolkit uses an inactive counter to count the time that a service requester or a service object has been inactive. When the service requester or service object is accessed, the toolkit resets the inactive counter. Once the inactive counter reaches a certain value, the toolkit deems the service requester or service object as timeout. The default timeout value for both service requesters and services objects is 10 minutes.
The Cache Cleaning Process searches for timeout service requesters and service objects periodically. If it finds any timeout service requesters or service objects, the Cache Cleaning Process will release those service requesters or service objects. You can specify the time interval that the Cache Cleaning Process runs.
When the first time a service invoker accesses the service requester factory to get an service requester, the Cache Cleaning Process runs searching for timeout service requesters, and then removes the timeout service requesters if it has found any.