S
SebastianMVD
Our application includes a client-side plug-in for Visio 2003, and we have
noticed a persisting problem with memory management on the client side. I
have been using .NET Memory Profiler v 2.6 to find out the causes, and found
out there is a problem with Visio allocating huge amounts of memory (like
500Mb or more) for opening files or handling shape manipulation on pages.
While opening a template from our server, which implies multiple chunks of
data to be downloaded, we notice Visio allocates more than 500Mb in phisical
memory for it. After the template is loaded our application releases the
space used by it and returns to 1MB of memory used, but Visio keeps most of
the memory allocated. When closing and reopening the template, the amount of
memory allocated increases even further, and eventually (after opening a
template for the third time usually) we run into the following error:
Error in ApplyTemplateEvent().Exception of type
‘System.OutOfMemoryException’ was thrown.
We have verified there is no memory leak in our application. Some operations
require big amounts of memory for the short time, but after completing memory
usage always comes back to its initial state. We have several memory
snapshots which can prove this.
The OutOfMemory problem was caused by Visio continuously allocating from 700
to 1000 Mb during various GM operations, mainly in physical memory, in DATA
area. We found that opening a file or adding a new shape to Visio diagram
dramatically increased memory allocated there. We were unable to find a
method to make Visio free the apparently unused memory.
We are looking for either some advice about releasing memory in Visio or if
possible for an installable patch/hotfix.
noticed a persisting problem with memory management on the client side. I
have been using .NET Memory Profiler v 2.6 to find out the causes, and found
out there is a problem with Visio allocating huge amounts of memory (like
500Mb or more) for opening files or handling shape manipulation on pages.
While opening a template from our server, which implies multiple chunks of
data to be downloaded, we notice Visio allocates more than 500Mb in phisical
memory for it. After the template is loaded our application releases the
space used by it and returns to 1MB of memory used, but Visio keeps most of
the memory allocated. When closing and reopening the template, the amount of
memory allocated increases even further, and eventually (after opening a
template for the third time usually) we run into the following error:
Error in ApplyTemplateEvent().Exception of type
‘System.OutOfMemoryException’ was thrown.
We have verified there is no memory leak in our application. Some operations
require big amounts of memory for the short time, but after completing memory
usage always comes back to its initial state. We have several memory
snapshots which can prove this.
The OutOfMemory problem was caused by Visio continuously allocating from 700
to 1000 Mb during various GM operations, mainly in physical memory, in DATA
area. We found that opening a file or adding a new shape to Visio diagram
dramatically increased memory allocated there. We were unable to find a
method to make Visio free the apparently unused memory.
We are looking for either some advice about releasing memory in Visio or if
possible for an installable patch/hotfix.