cs_seni
Messages postés24Date d'inscriptionmercredi 18 août 2004StatutMembreDernière intervention 3 novembre 2005
-
23 août 2004 à 06:40
Pornman
Messages postés20Date d'inscriptionsamedi 25 septembre 2004StatutMembreDernière intervention20 janvier 2006
-
31 oct. 2005 à 16:13
Bonjour
J'ai cree un Thread qui doit realiser une fonction 5 sec apres qu'il soit lance. Si je mets un sleep de la maniere suivante:
procedure TPrintThreadSH2.Execute;
begin
sleep(5000);
frmStatsPrinterMain.wbStats.Navigate(frmStatsPrinterMain.StatsDirectory + 'SH2.html?print=yes');
end;
le reste de mon application se bloque. Est il possible de bloquer juste le thread pour une duree precise?
Loulibier
Messages postés309Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention24 septembre 20082 23 août 2004 à 10:01
Salut Seni,
A priori tu dois avoir un soucis dans ton Thread, car j'ai tester ton problème sur l'une de mes applications et cela ne bloque pas du tout mon application.
par contre test le terminated, cela marche peut être mieux.
while not Terminated do
begin
sleep(5000);
frmStatsPrinterMain.wbStats.Navigate(frmStatsPrinterMain.StatsDirectory + 'SH2.html?print=yes');
end;
Loulibier
Messages postés309Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention24 septembre 20082 24 août 2004 à 08:26
Salut,
Certain putiste t'expliqueront qu'il faut limiter l'utilisation des ProcessMessages. Mais si cela te conviens ;)
As-tu essayés ce que je t'ai mis comme code ?
Car chez moi je n'es pas le même phénomène.
Loulibier
Messages postés309Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention24 septembre 20082 31 oct. 2005 à 15:08
Je suis entierement d'accord avec toi "Les choses les plus simple fonctionne le mieu..." mais ta procedure fonctionne du moment que ton utilisateur ne clique pas sur la barre des titres...
Car tant que l'utilisateur clique sur la barre de titre de l'application ton Wait ne rendra pas la main... Cela peux poser des problèmes dans certains cas.
Bonne Prog,
Olivier
PS : Lorsqu'une réponse vous convient, n'oubliez pas de la valider.
Loulibier
Messages postés309Date d'inscriptionjeudi 6 juin 2002StatutMembreDernière intervention24 septembre 20082 31 oct. 2005 à 16:06
Fait un petit prog ou tu utilises ta procedure wait et affiche un message du style ShowMessage('Fin de mon Wait') execute ton programme et clique sur la barre de titre de ton application et tu verras que tant que tu restes cliqué sur la barre de titre la boite de dialogue n'apparait pas ! car ta procedure ne rend pas la main !
Bonne Prog,
Olivier
PS : Lorsqu'une réponse vous convient, n'oubliez pas de la valider.