A component-based framework includes system services and component integration
interfaces that provide a run-time environment for component-based server application
in which server application components have control over the duration of their
state independent of client action. The framework provides functions that a server
application component calls to indicate its work for a client is complete, and
its state is to be destroyed. On the component's return from the client's method
call, the framework destroys the component's state thus releasing any server computer
resources held by the component. This allows the server application components
to be programmed so as to minimize the duration that their state remains in memory
consuming server computer resources, and which enhances scalability of the server application.