Tools MemoryCleanup/en
Under normal conditions, you do not have to care about expecco's memory: its underlying support system performs automatic memory management (garbage collection). This includes automatic finalization of objects which refer to operating system resources such as file handles, database-connections etc. However, these finalizations may happen quite delayed, due to the fact that the garbage collector is usually only invoked when running out of memory or when more memory is requested. This means, that if a file- or database handle has not been closed, but is also no longer used by a test suite, that handle will be closed (and thereby freed) whenever the next garbage collect operation occurs. Which, if no memory is needed for some time, may happen quite delayed.
This tool-function forces a garbage collect operation to be triggered immediately, and thereby freeing any unreferenced operating system resources. When those resources get collected, a finalize function is called automatically, which closes the associated operating system handle. Use this, if you have the feeling that the system is using many file, window, socket or other handles.
Notice: the automatic memory management can of course only free memory that is completely unreachable. This means that objects that are still referenced by other referenced objects will not be reclaimed. In expecco, one such "top level" referrer is usually the result log/execution trace of the previous execution(s). This is the storage you see when inspecting pin values after an execution. For example, if a socket or file handle is stored in this execution trace, AND this handle was not properly closed (either because the suite simply forgot to close it, or because the test was aborted and the suite provided no close in its post-action), then the handle might be stored in the log, and is therefore never closed automatically. In this case, you should either "Remove all Results in System" (in the "Test-Results"-menu), and then perform a memory cleanup, or use one of the other maintenance functions from the menu to close handles.
Back to Online Documentation