04.04.2014 15:37, Alex Peshkoff wrote:
> On 04/04/14 17:01, James Starkey wrote:
>> An alternate solution that is close is thread specific sub-pools, which is
>> nice because a thread specific sub-pool doesn't even need interlocked
>> instructions.  It does require a fetch of thread specific data on every
>> allocate and release, but some platforms dedicate a register to point to
>> thread specific data, making the op essentially free.
>
> Unfortunately on a lot of platforms which seem to provide such support
> it does not work in dynamic libraries. Our engine is dynamic library...
> To be precise even use of traditional TLS calls is relatively fast -
> TLS_get requires about 10-15 machine instructions to complete which much
> less than single atomic op, not to say about locking something.

   With thread-specific pools isn't it impossible to allocate object in one 
thread and 
then release in other?..

-- 
   WBR, SD.

------------------------------------------------------------------------------
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to