Message de rapport:
 

Re: execution d'un thread secondaire

Sujet: Re: execution d'un thread secondaire
par JeromeR sur 8/2/2006 11:07:29

Voila en faite dans la procédure appelée par mon thread je faits la chose suivante :

Je lance une appli externe qui créer un fichier texte et le rempli.

Une fois que le pro est lancé et que le fichier a été créer je fait une boucle qui tourne tant que mon booléen ne passe pas a faut.

Dans cette boucle j'ouvre le fichier je lit une ligne, je retiens ma position dans mon fichier.
Si la ligne que j'ai lue est différente de la fin de fichier j'appel une procédure qui analyse ce que j'ai récup et fait des traitements en fonction.


	BOUCLE
		vDoc = fOuvre(<mon_fichier_txt>,foLecture)
		SI vDoc<>-1 ALORS
				SI PositionEnCours<>0 ALORS
					fPositionne(vDoc,PositionEnCours,fpDébut)
				FIN
				PageWeb = fLitLigne(vDoc)
				PositionEnCours = fPositionne(vDoc, 0, fpCourant)
				SI (PageWeb=EOT) ALORS //(PageWeb="")ET
					attente = Vrai
					Message("Attente = vrai")
				SINON
					Message("")
					<ma_procedure>(PageWeb)	
				FIN
				res est un entier = fFerme(vDoc)
				SI res = -1 ALORS
					// Affichage du message d'erreur si la fermeture n'a pas été effectuée 
					//Erreur(ErreurInfo( errMESSAGE ))
				FIN			
				SI attente=Vrai ALORS
					Multitâche(-100)
					attente=Faux
				FIN	
		FIN
	A FAIRE TANTQUE CtiVoIP=Vrai
	ThreadArrête("mon_thread")


Voila mon code avec l'ajout d'un multitâche(-100) comme vous me l'avez conseillez dans le poste précédent.
Avec le multitâche ça fonctionne mais l'appli est tout de même un peu moins réactive que lorsque le thread secondaire ne tourne pas.
Peut-etre pourrez vous m'aider à optimiser mon code.
Connexion
Menu
Chercher WDForge
Chercher Web
Partenaires
Visualiser tous les Partenaires...
WinDev, WebDev, WinDev Mobile et HyperFile sont des marques déposées par PCSoft. |  Voter |  Legal |  Contact |   XOOPS 2.0.13.2