realbasic-nug.fr
[Top] [All Lists]

Re: Lancement de threads dans une boucle...

To: REALbasic NUG French <realbasic-nug dot fr at lists dot realsoftware dot com>
Subject: Re: Lancement de threads dans une boucle...
From: Arnaud Nicolet <anic297 at mac dot com>
Date: Mon, 19 Nov 2007 19:45:26 +0100
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug dot fr at lists dot realsoftware dot com
References: <4EE943A2-0AB7-49CD-8CF9-30488C44887D at e-topics dot net>
Le 19 nov. 07 à 17:16 soir, Powel a écrit:

Bonjour,

Le lancement de threads dans une boucle ne pose-t-il pas de problèmes ? Le fait que tous les thread est le même nom me semble peu intuitif. Existe-t-il une autre solution ?

Cordialement,

Powel


Ex :

Dim nom_thread As thread_ref

...

For...

        nom_thread = new thread_ref

Next

Pourquoi ne pas utiliser le même "thread" uniquement?

Vous pourriez même le réinitialiser au démarrage si les propriétés le requièrent:

dim MyThread As new ThreadRef

for i=0 to 10
myThread.Initialize
myThread.Run
next

De mémoire, le problème avec votre code est que votre ancien "thread" est perdu lorsque le nouveau est créé (le "new ThreadRef" créé un nouveau "thread" mais l'ancien n'est plus référencé (il n'y a plus de variables qui y font référence). Du coup, il n'est plus en mémoire (il n'existe plus)). C'est la théorie en général pour les objets, peut-être avec de la chance, RealBasic mémorise les "thread" en interne et ce serait bon.

<Prev in Thread] Current Thread [Next in Thread>