Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Sergei Gorelkin
Mattias Gärtner wrote: Zitat von Burkhard Carstens <[EMAIL PROTECTED]>: Am Mittwoch, 6. August 2008 21:37 schrieb Sergei Gorelkin: Since this topic is touched, I would like to vote for removing avl_tree dependency from the DOM altogether. The reason is that the avl tree of child nodes is usele

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Marco van de Voort
> Am Donnerstag, 7. August 2008 11:28 schrieb Marco van de Voort: > > > > I would add nodemgr as parameter to create, but with a default value > > of nil. If not NIL then just grab the default nodemanager. > > You mean "if nodemgr = nil" then grab the global one ? > This wouldn't help much for the

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Burkhard Carstens
Am Donnerstag, 7. August 2008 11:28 schrieb Marco van de Voort: > > Am Mittwoch, 6. August 2008 20:41 schrieb Inoussa OUEDRAOGO: > > What about this: > > * let TAVLTree access the node manager using a local reference > > (TAVLTree.FNodeMemManager) > > * in TAVLTree.create: > > if IsMultiThread

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Burkhard Carstens
Am Donnerstag, 7. August 2008 11:15 schrieb Burkhard Carstens: [...] > > What about this: > * let TAVLTree access the node manager using a local reference > (TAVLTree.FNodeMemManager) > * in TAVLTree.create: > if IsMultiThread then > FNodeMemManager:=TAVLTreeNodeMemManager.create > else >

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Marco van de Voort
> Am Mittwoch, 6. August 2008 20:41 schrieb Inoussa OUEDRAOGO: > What about this: > * let TAVLTree access the node manager using a local reference > (TAVLTree.FNodeMemManager) > * in TAVLTree.create: > if IsMultiThread then > FNodeMemManager:=TAVLTreeNodeMemManager.create > else > FN

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Burkhard Carstens
Am Mittwoch, 6. August 2008 20:41 schrieb Inoussa OUEDRAOGO: > Hi, > > TAVLTree in avl_tree.pp is not thread safe due to the node > allocation and de-allocation done through the global > declared "NodeMemManager" variable. TAVLTreeNodeMemManager > implementation is cleary not thread safe, which btw

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Mattias Gärtner
Zitat von Burkhard Carstens <[EMAIL PROTECTED]>: > Am Mittwoch, 6. August 2008 21:37 schrieb Sergei Gorelkin: > > Since this topic is touched, I would like to vote for removing > > avl_tree dependency from the DOM altogether. The reason is that the > > avl tree of child nodes is useless for any re

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-07 Thread Burkhard Carstens
Am Mittwoch, 6. August 2008 21:37 schrieb Sergei Gorelkin: > Mattias Gaertner wrote: > > On Wed, 6 Aug 2008 19:41:27 +0100 > > > > "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: > >> Hi, > >> > >> TAVLTree in avl_tree.pp is not thread safe due to the node > >> allocation and de-allocation done thro

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Micha Nelissen
Inoussa OUEDRAOGO wrote: 2008/8/6 Micha Nelissen <[EMAIL PROTECTED]>: Perhaps another option is to remove the NodeMemManager altogether and simply use GetMem/FreeMem (or New/Dispose)? The second proposition contains a default TAVLTree that remove the node mem manager and TAVLManagedTree that h

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Inoussa OUEDRAOGO
2008/8/6 Micha Nelissen <[EMAIL PROTECTED]>: > Inoussa OUEDRAOGO wrote: >> Hi, >> >> TAVLTree in avl_tree.pp is not thread safe due to the node >> allocation and de-allocation done through the global >> declared "NodeMemManager" variable. TAVLTreeNodeMemManager >> implementation is cleary not threa

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Micha Nelissen
Inoussa OUEDRAOGO wrote: > Hi, > > TAVLTree in avl_tree.pp is not thread safe due to the node > allocation and de-allocation done through the global > declared "NodeMemManager" variable. TAVLTreeNodeMemManager > implementation is cleary not thread safe, which btw IMHO > is a good thing ( for perfo

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Inoussa OUEDRAOGO
2008/8/6 Vinzent Höfler <[EMAIL PROTECTED]>: > Inoussa OUEDRAOGO wrote: >> >> 2008/8/6 Mattias Gaertner <[EMAIL PROTECTED]>: >>> >>> On Wed, 6 Aug 2008 19:41:27 +0100 > >>> >>> >>> Providing a local node mem manager does not repair xml dom. >> >> A "threadvar" declared variable is local to the call

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Vinzent Höfler
Inoussa OUEDRAOGO wrote: 2008/8/6 Mattias Gaertner <[EMAIL PROTECTED]>: On Wed, 6 Aug 2008 19:41:27 +0100 >> Providing a local node mem manager does not repair xml dom. A "threadvar" declared variable is local to the calling thread. Yes. But the reference this threadvar is pointing to is _

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Inoussa OUEDRAOGO
2008/8/6 Mattias Gaertner <[EMAIL PROTECTED]>: > On Wed, 6 Aug 2008 21:19:13 +0100 > "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: > >> 2008/8/6 Mattias Gaertner <[EMAIL PROTECTED]>: >> > On Wed, 6 Aug 2008 19:41:27 +0100 >> > "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: >> > >> >> Hi, >> >> >>

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Mattias Gaertner
On Wed, 6 Aug 2008 21:19:13 +0100 "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: > 2008/8/6 Mattias Gaertner <[EMAIL PROTECTED]>: > > On Wed, 6 Aug 2008 19:41:27 +0100 > > "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: > > > >> Hi, > >> > >> TAVLTree in avl_tree.pp is not thread safe due to the no

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Inoussa OUEDRAOGO
2008/8/6 Vinzent Höfler <[EMAIL PROTECTED]>: > Inoussa OUEDRAOGO wrote: > >> TAVLTree in avl_tree.pp is not thread safe due to the node >> allocation and de-allocation done through the global >> declared "NodeMemManager" variable. TAVLTreeNodeMemManager >> implementation is cleary not thread safe,

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Inoussa OUEDRAOGO
2008/8/6 Mattias Gaertner <[EMAIL PROTECTED]>: > On Wed, 6 Aug 2008 19:41:27 +0100 > "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: > >> Hi, >> >> TAVLTree in avl_tree.pp is not thread safe due to the node >> allocation and de-allocation done through the global >> declared "NodeMemManager" variable

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Sergei Gorelkin
Mattias Gaertner wrote: On Wed, 6 Aug 2008 19:41:27 +0100 "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: Hi, TAVLTree in avl_tree.pp is not thread safe due to the node allocation and de-allocation done through the global declared "NodeMemManager" variable. TAVLTreeNodeMemManager implementation

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Vinzent Höfler
Inoussa OUEDRAOGO wrote: TAVLTree in avl_tree.pp is not thread safe due to the node allocation and de-allocation done through the global declared "NodeMemManager" variable. TAVLTreeNodeMemManager implementation is cleary not thread safe, which btw IMHO is a good thing ( for performance reason).

Re: [fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Mattias Gaertner
On Wed, 6 Aug 2008 19:41:27 +0100 "Inoussa OUEDRAOGO" <[EMAIL PROTECTED]> wrote: > Hi, > > TAVLTree in avl_tree.pp is not thread safe due to the node > allocation and de-allocation done through the global > declared "NodeMemManager" variable. TAVLTreeNodeMemManager > implementation is cleary not

[fpc-devel] TAVLTree(avl_tree.pp) thread safety, fcl-xml(DOM) is also concerned.

2008-08-06 Thread Inoussa OUEDRAOGO
Hi, TAVLTree in avl_tree.pp is not thread safe due to the node allocation and de-allocation done through the global declared "NodeMemManager" variable. TAVLTreeNodeMemManager implementation is cleary not thread safe, which btw IMHO is a good thing ( for performance reason). Proposition : (a) TAV