[C] Bidouillage avec des threads....

Bidouillage avec des threads.... [C] - C - Programmation

Marsh Posté le 16-06-2004 à 12:40:15    

Bonjour a tous, petite question dont j'ai du mal a cerner la reponse:
 
Dans un code, j'ai une fontion threadee qui se bloque parfois  (genre elle peut rester sur un read ou autre).
Je souhaite pouvoir mettre un timeout a ce thread, cad que si elle reste bloquee X secondes, le thread est kille.
 
Comment je peux faire ca?
 
Merci d'avance.  :jap:

Reply

Marsh Posté le 16-06-2004 à 12:40:15   

Reply

Marsh Posté le 16-06-2004 à 13:15:36    

En fonction de l'API, il y a généralement moyen de mettre un timeout à la création du thread.
Mais ce n'est pas la bonne manière. Si ton thread bloque, c'est vraisemblablement qu'il y a une ressource utilisée par deux threads simultanément et tu dois utiliser des mutex et des sections critiques pour acquérir la ressource de façon à éviter ce blocage.

Reply

Marsh Posté le 16-06-2004 à 15:59:07    

Normalement tu as une fonction wait (ou du genre) qui accepte un timeout.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 16-06-2004 à 16:35:48    

ce n'est pas une bonne approche. utilise des lectures non-bloquantes

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed