Bonjour
Je cherche a structurer mon programme avec l'utilisation d'un TThread et la méthode Synchronize()
Mon interface utilisateur me permet de lancer un calcul sur 1 journée à un mois
ce calcul renvoie périodiquement des infos dans un mémo sur l'avancement
Pour mon calcul j'ai créé une classe (que je devrait pouvoir réutiliser sous Linux) pour une série des tests sur des nombres, pour voir s'il sont premier ou pas
Actuellement j'ai un TButton qui crée une instance de ma classe TLLTestsThread
avant le Resume() je désactive l'interface, et je la réactive sur le OnTerminate, pour garantir qu'un seul thread est lancé
le TLLTestsThread possède un constructeur qui prend des infos depuis l'interface : 2 TEdit pour savoir quel est le 1er nombre a calculer et quel est le dernier
la méthode Execute() du thread
créé un objet lltest1 de calcul d'une classe LLTest
et possède une boucle for() entre les 2 nombres
à chaque itération de boucle je lance lltest1->TestNombre(nombre_de_l_iteration);
mon soucis c'est que la classe LLTest doit rester le plus possible indépendante de la VCL
mais elle possède des appel affiche_infos() qui doivent faire l'usage de Synchronize() pour afficher dans le mémo
Quelqu'un aurais une idée simple pour que ma classe utilise TThread::Synchronize() ?
puis-je utiliser autre chose que Synchronize() ?
Partager