When a window is opened for the first time in a particular session, ESI specifications are retrieved from file or from repository and stored on the client computer in the ESI cache. These are the specifications of window classes and control classes.
From the specifications in the ESI cache, the actual window is built. This is the process of assembling window instance properties inherited from a number of window classes, assembling control properties inherited from a number of control classes, and calculating actual display heights, widths, distances and other properties of controls in the window relative to each other.
To avoid the application from performing this process each time that the user re-opens the window, when windows are built they are also cached in a workspace cache on the client computer. By default, up to 10 windows are cached in this workspace cache. The workspace is the set of windows currently displayed on the screen.
When a window is opened a second or subsequent time within a session, startup time is much reduced. This is because the window probably exists in the workspace cache. Even if this is not true because of workspace cache overflow, re-opening of the window is quicker than first opening since ESI specifications can be read from the ESI cache.