On 15/08/2011 14:16, Martin wrote:
41870000 open lazarus, with about a dozen units - close one unit,
to trigger the output
198591312 open 450 univint - close one unit, to trigger the output
63014880 close all 450 univint => ok so some meory was kept
193982864 open 450 univint - close one unit, to trigger the output =>
hey we are even lower than last tim
62963664 close all 450 univint => no extra memory kept on 2nd run
...
- A certain amount is allocated and kept => but it does not increase
One think is that the project session does remember every unit that was
onced open (it will forget it only, if not accessed for a long time
(many open/close of project ).
The project session remembers status info, such as scrolled-pos and
caret-pos for each unit, that was once opened.
So if you re-open a unit, you had once open before, you will have the
caret, at the same pos, it used to be when you closed the unit (unless
you open it via code jump, which will override the caret pos)
As I said there is an algorithm that will lead to units eventually be
removed from the session, but only if they do not get accessed over many
open/close cycles of the project.
I do nor know how much of the 20 MB that makes. Would NOT expect it to
be much. But it serves as example, that there exists information, that
can with full intention be kept.
--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus