-
problem avec TThread
Bonjour,
j'ai créer 2 applications developpées avec BCB6:
server: supervise quelques applications locales (vérifie les processus présents)
client: interroge le server sur l'état de ces applications, suppervise ie local et affiche une fenêtre d'erreur si l'une des applications (local ou sur le server) ne troune pas.
le client utilise 2 Thread, l'une pour la communication avec le server et l'autre pour la suppervision de ses applications.
sur Windows XP mes applications client server fonctionnent à merveille. mais sur Windows 2000 il y a des problemes: l'application cliente ce bloque si ses 2 thread fonctionnent simultanément.
Alors y aurait-il un problem avec la classe TThread et Windows 2000?
je signal au passage que j'utilise la méthode Synchronize() de la classe TThread pour l'actualisation de ma Form Principale.
pourquoi mon Projet est-il incompatible avec Windows 2000?
hrp
merci.
-
Bonjour,
S'agit-il exactement de la même machine ?
Pas d'hyperthreading sur la machine Windows 2000 ?
Cordialement,
Arnaud
-
problem avec TThread
non, la machine Windows 2000 ne possède pas d'hyperthreading. D'ailleur je rencontre ce problème sur n'importe quelle machine Windows 2000.
J'ai l'impression que la méthode Synchronize() joue un rôle dans ce problème.
Dans un de mes Thread j'utilise un semaphore pour synchroniser les réceptions des réponses de l'application server en fonction des questions envoyées par l'application cliente. Les sémaphores réagissent-ils de la même manière sur Windows 2000 comme sur Winodws XP (CreateSemaphore() et WaitForSingleObject())?
-
Pas de pb avec un thread
Bonjour,
Je travaille avec Windows 2000 pro et BCB 6 pro.
J'ai une application qui utilise 2 threads, mais un seul thread est actif à la fois.
Je n'ai pas eu besoin d'utiliser la fonction synchronize().
Je n'ai pas rencontré de problèmes.
-
Bonjour,
j'ai eu des problèmes équivalents avecla gestion des threads et des VCL entre des Applications tournant parfaitement sous NT 4 et provoquant des bloquages sous W2k
j'ai résolu le problème en n'utilisant plus le<synchronize de la VCL>,mais en envoyant simplement des messsages vers la fenêtre applicative à l'aide des API win32 <SendMessage>
Cordialement