Greetings. I am developing a moderately-sized (about 200 VIs) lab control
application in 6.0.2. It uses one main loop routine, and the 4 UI windows
pass control & indicator values into the main loop via reference. This is
under WinNT4.
When the program is launched, LabView uses about 27 MB of RAM. However, as
the program runs, the memory usage climbs about 50 KB per minute without
apparent bound. Furthermore, the longer the program has been running, the
longer it takes it to "clean up" when the program stops. After running for
about 16 hours, I've even seen it hang (Task Manager says "not responding")
on stopping.
Note that no matter how long the program runs, however, the VI profiler
NEVER shows the memory usage of any of the VIs getting out
of control. In
fact, the numbers almost never change.
I've already tried the following things to remedy the problem (based on the
KBase, and other posts here):
(1) I've removed all coercion dots where possible, and nowhere am I
coercing any arrays or clusters.
(2) All VI refs are appropriately closed when I'm done with them (most are
opened once and just reused until the program stops)
(3) Checked the "Deallocate memory ASAP" box in the Options.
So far, nothing has helped (or even changed) the situation, and I'm running
short on ideas. Can anyone offer me any insight into what might be
happening? Is this a common sort of problem that occurs when passing fairly
large amounts of data around by reference, and is there anything I can do
about it?
Thanks, in advance.
Justin Goeres
Indio Systems, Inc.
Pleasanton, CA