Memory allocation

The first time any client requests an instance of a PowerBuilder COM object from a PowerBuilder COM server, the server loads the PowerBuilder virtual machine, allocates a block of memory, and starts a runtime session. About 4MB of memory is allocated for the PowerBuilder virtual machine, cached memory, and the runtime session.

Subsequent requests do not require any additional memory allocation if the objects can share the same runtime session.

If a subsequent request requires a PowerBuilder COM object to be created in a different COM apartment (usually because the request was made from a different client or thread), the object is instantiated in a new runtime session. Each new session requires only about 200K of memory; it shares the instance of the PowerBuilder virtual machine and the cached memory.