IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Discussion :

SetEvent et WaitForSingleObject


Sujet :

Windows

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    905
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Mai 2011
    Messages : 905
    Points : 85
    Points
    85
    Par défaut SetEvent et WaitForSingleObject
    Bonjour,
    Je voudrais faire à chaque processus 'client' un appelle WaitForSingleObject pour le même HANDLE d'évenement.
    Sachant que j'execute 1 serveur et plusieurs processus client


    Dans le serveur j'utilise ceux-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    HANDLE he=CreateEventA(NULL,TRUE,FALSE,"Local\\st");
    	
    	getch();
    	SetEvent(he);
    	//Sleep(1000);
    	ResetEvent(he);
    getch();
    		SetEvent(he);
    		ResetEvent(he);
    Et le processus client utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    HANDLE he=OpenEventA(EVENT_ALL_ACCESS ,FALSE,"Local\\st");
    	if (he!=NULL)
    	{
    		printf("wait\n");
    		WaitForSingleObject(he,INFINITE);
    		printf("Libérer\n");
    		WaitForSingleObject(he,INFINITE);
    		printf("Libérer\n");
    	}
    j'utilise donc plusieurs processus client d'événement et un seul server d'évenement,
    ca marche mais c'est pas trés commode.

    Peux t'on faire autrement pour faire plusieurs waitforsingleobject dans le même évenement ???

    Merci

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Donne plus de contexte sur le problème. Que cherches-tu à faire exactement?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    905
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Mai 2011
    Messages : 905
    Points : 85
    Points
    85
    Par défaut
    Je veux faire un setevent de l'évement 'a' pour tous les waitforsingleobject de cette évenement 'a'

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Je ne comprends pas ce que tu veux dire par "un pour tous", donc explique-moi la "big picture".
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    905
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Mai 2011
    Messages : 905
    Points : 85
    Points
    85
    Par défaut
    je fais plusieurs fois
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    HANDLE he=OpenEventA(EVENT_ALL_ACCESS ,FALSE,"Local\\st");
    if (he!=NULL)
    {
    		
    		WaitForSingleObject(he,INFINITE);
    }
    et je voudrais que tous ces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WaitForSingleObject(he,INFINITE);
    passe .
    Rien difficile à comprendre.

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 518
    Points
    41 518
    Par défaut
    Ma question, c'est: Ton truc spécifique, à quoi doit-il servir?

    Parce que sans plus d'infos, mon conseil sera simplement "ne resette pas l'événement après l'avoir setté".
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 685
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 685
    Points : 13 102
    Points
    13 102
    Par défaut
    D'après ce que j'ai compris (!), tu aimerais dans une même procédure avoir plusieurs waitforsingleobject sur le même événement pour synchroniser des étapes.

    Ça n'est juste pas possible à moins de mettre des sleep dans tous les coins (et encore). Rien ne garanti que les threads soient planifiés par l'OS juste au bon moment.

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    905
    Détails du profil
    Informations personnelles :
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Mai 2011
    Messages : 905
    Points : 85
    Points
    85
    Par défaut
    Citation Envoyé par Andnotor Voir le message
    D'après ce que j'ai compris (!), tu aimerais dans une même procédure avoir plusieurs waitforsingleobject sur le même événement pour synchroniser des étapes.

    Ça n'est juste pas possible à moins de mettre des sleep dans tous les coins (et encore). Rien ne garanti que les threads soient planifiés par l'OS juste au bon moment.
    Oui
    Oui

Discussions similaires

  1. waitforsingleobject
    Par hiko-seijuro dans le forum MFC
    Réponses: 6
    Dernier message: 20/11/2005, 22h55
  2. Problème de mutex avec Waitforsingleobject non-bloquant
    Par rvzip64 dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 03/11/2005, 11h02
  3. Réponses: 3
    Dernier message: 26/02/2005, 09h33
  4. Question concernant l'API "WaitforSingleObject
    Par Drooxy dans le forum API, COM et SDKs
    Réponses: 3
    Dernier message: 29/03/2003, 07h26
  5. Probleme de WaitForSingleObject
    Par Bbenj dans le forum API, COM et SDKs
    Réponses: 8
    Dernier message: 02/08/2002, 09h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo