Threader les methodes d un objet

Threader les methodes d un objet - C++ - Programmation

Marsh Posté le 12-05-2008 à 14:04:32    

Bonjour,
 
Alors je ne suis pas tellement certain que mon titre soit tres explicite. Voila mon probleme :
 
J ai un objet Mesh qui implemente tout un tas de methodes sympatiques mais longues. J ai un objet MeshRenderable qui copie le Mesh dans une structure  pour openGL et qui est utilise par mon GUI.
 
Je souhaite pouvoir appeler les methodes de Mesh dans un thread, puis a la sortie de ce thread mettre a jour le MeshRenderable.
 
Pour l instant je fais ca de maniere assez crade. Etant sous QT je cree pour chaque methode de Mesh que je souhaite appeler une classe heritée de QThread.
 
D ou la question : quelle est la bonne facon de prendre un objet, de ne pas toucher a son code, et de l encapsuler de maniere a acceder a lui et ses methodes dans des threads, et de deleter les objets threads une fois qu ils ont fini.
 
Merci
 
 

edit :  
C etait vraiment debile d initialiser un thread a chaque fois. Ma nouvelle approche est d avoir une classe abstraite IJob avec une methode virtuelle pure void run(); et de passer ces objets a un ThreadedWorker qui les fout sur une queue et la traite  a chaque appel de start. Je suis vraisemblablement un poil plus proche de la "bonne facon de faire". :D


Message édité par chewif le 12-05-2008 à 17:04:51
Reply

Marsh Posté le 12-05-2008 à 14:04:32   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed