[fpc-devel] Memory consumed by strings

Martin Schreiber fpmse at bluewin.ch
Sun Nov 23 12:37:32 CET 2008


On Sunday 23 November 2008 09.26:35 Graeme Geldenhuys wrote:
> On Sun, Nov 23, 2008 at 10:19 AM, Mattias Gaertner
>
> <nc-gaertnma at netcologne.de> wrote:
> > On Sat, 22 Nov 2008 23:05:43 +0200
> > For example the lazarus IDE typically holds 50 to 200mb sources in
> > memory. If this would be changed to unicodestring (2 byte per char) then
> > the IDE would need 50 to 200mb more memory.
>
> Ah, and that would probably explain why Martin decided not to
> pre-parse units in MSEide - for things like code complection etc...
> MSEide's memory usage would balloon greatly, compared to Lazarus.
>
MSEide parses the code for code navigation only and on demand. For creating 
event handlers and the like the compiled in RTTI will be used. I decided not 
to parse the RTL because I wanted to be independent from the source 
installation and because I think the task to do exact parsing of the whole 
FPC RTL and other libraries is too difficult and not necessary because RTTI 
provides sufficient information.
The parser uses 8bit strings, 16bit is used in the code editor. It is possible 
to work a whole day with MSEide without closing a single file and without 
noticeable loss of speed.

Martin



More information about the fpc-devel mailing list