Re: [fpc-devel] threadlocalvar unLOCKed variables

2010-01-09 Thread Jonas Maebe
On 09 Jan 2010, at 11:12, A. Bouchez wrote: > 1. How does it work on multi-thread? E.g. if you allocate a memory block in a > thread, and that TWO threads call Reallocmem() at the same time? In the past that would have worked if both threads tried to reallocmem it to the same size (otherwise,

Re: [fpc-devel] threadlocalvar unLOCKed variables

2010-01-09 Thread A. Bouchez
After looking forward in the heap.inc source file supplied with the 2.4.0 software release, I've some remarks: It seems that small blocks of memory are allocated by thread, using the threadvar freelists declaration... Well.. 1. How does it work on multi-thread? E.g. if you allocate a memory bloc

[fpc-devel] threadlocalvar unLOCKed variables

2010-01-09 Thread A. Bouchez
I made a proposal in http://wiki.freepascal.org/Modernised_Pascal 20) threadlocalvar unLOCKed variables i.e. strings and dynamic arrays local to the current thread: reference-counted without the asm LOCK, "copy and write" only with other threadlocalvar, thread-local heap (without any asm LOCK ei