<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
On 15/08/2011 18:08, Mattias Gaertner wrote:
<blockquote
cite="mid:246262693.155302.1313428111623.JavaMail.open-xchange@cc-app3"
type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<div style="margin: 5px 0px 5px 0px;"> Correct. One for the
scanner that scans the compiler directives and extracts the
"cleaned source" and one for the parser that reads the pascal. </div>
<p style="margin: 0px;">Additionally the codetools caches the file
sources (i.e. the files converted to UTF-8). </p>
<p style="margin: 0px;">The biggest part of the files are kept in
cache and closing the project does not free this cache. </p>
<br>
</blockquote>
<br>
<br>
so there we go. looking at the numbers I got from the memory
manager:<br>
<br>
<blockquote type="cite"> 41870000 open lazarus, with about a dozen
units - close one unit, to trigger the output
<br>
198591312 open 450 univint - close one unit, to trigger the
output
<br>
63014880 close all 450 univint => ok so some meory was kept
<br>
</blockquote>
<br>
The 450 files covered 16.7 MB text.<br>
<br>
After they were closed, all but 21.1 MB were freed. Given that it
will take a bit of overhead to store the data, given that session
info is stored too..... I believe the numbers match pretty well.<br>
I would say all memory is accounted for.<br>
<br>
As for why memory returned to memory manager, does not get back to
the OS (apparently not even when using cmem...) no idea. But memory
is definitely returned to the mem manager.<br>
<br>
As for the issue Ludo reported with QT, and requiring even a reset
of his system. *IF* any handles or other resources of the widgetset
(not the lazarus part, but the actual QT or GTK lib or w32) are
leaked, then it needs to be traced. (btw there were people with
issues on win98, so it could be).<br>
But such leaks, would be necessarily be likely to be noticeable as
huge memory consumers.<br>
</body>
</html>