Boucle thread simple exemple !

fabiin Messages postés 329 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 8 décembre 2009 - 27 févr. 2002 à 21:28
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 - 28 févr. 2002 à 23:59
Salut !
Je cherche un exemple simple d'une boucle thread
je n'est trouvé aucun tutorial français a ce sujet sur internet :sad)

Merci par avance

@+
Fabs

5 réponses

eedy31 Messages postés 63 Date d'inscription mercredi 23 janvier 2002 Statut Membre Dernière intervention 16 avril 2008
27 févr. 2002 à 22:06
tien,je sais pas si ça va repondre précisément a ta quest mé je te file tjrs ça :

function Patientez(p:pointer):integer;
var i:integer;
s:string;
hcontexteaff: HDC //handle de ressource
begin
HContexteaff:= GetDC(form1.handle);
for i:=1 to 123456 do begin
s:=strtoint(i);
textout(hcontexteaff,10,10,pchar(s),length(s));
end;
ReleaseDC(form1.handle, hcontexteaff);
end;

et tu peux l'appeler par ex com ça ds Onclick de button1:

button1.enabled:=false;
patientez(nil);
button1.enabled:=true;

@+ Eedy :))
0
fabiin Messages postés 329 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 8 décembre 2009 6
27 févr. 2002 à 22:11
non, c bien plus compliqué :)
c une vrai boucle thread
pour ke le progs fasse 2choses en même temps
en réalité, c faire tourné une boucle et pouvoir utiliser les menus de la form sans ke la boucle soit stoppée

Merci
@+
Fabs 8-)
0
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
28 févr. 2002 à 00:43
Une boucle Thread, mais c'est une boucle infernale.
En fait, il s'agit de lancer un Thread d'éxécution autre que celui appelé "thread principal" en charge de réaliser ce que lui demande l'application.
Primo :
Déclarer une classe dérivée de TTHread à l'aide de la commande Fichier/Nouveau : objet Thread.
Surcharger la méthode Execute.
Déclarer une procédure chargée de la synchronisation avec le thread principal au moment d'actualiser les objets de la VCL et que tu appelleras le moment voulu en passant son nom à la méthode Synchronize.
C'est très schématique mais, comme je le dis souvent, regardes dans les exemples fournis avec Delphi (C:\Program Files\Borland\Delphi6\Demos\Threads). Les exemples ne sont pas toujours bien documentés mais ils traitent d'un thème et ils le font bien.
Les threads sont simples à mettre en oeuvre (si, si) et peuvent augmenter de manière significative les performances de l'application ou... tout l'inverse. Il ya quelques erreurs à ne pas commettre, surtout si l'on utilise une base de données. J'essaierai de publier un exemple sur ce forum le plus vite possible. C'est un sujet qui m'a passionné. :)
0
fabiin Messages postés 329 Date d'inscription mercredi 4 avril 2001 Statut Membre Dernière intervention 8 décembre 2009 6
28 févr. 2002 à 19:21
oui ! :big)
ki me passionne aussi,
si tu pouvai sortir un petit tut la dessus ca serait vraiment cool :)

Merci vraiment a toi, je vai regarder ce ke tu m'as expliquer !

@+
Fabs :big)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
28 févr. 2002 à 23:59
C'est en cours de réalisation, probablement pour demain.
;)
0
Rejoignez-nous