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

C Discussion :

atexit()


Sujet :

C

  1. #1
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 88
    Points : 59
    Points
    59
    Par défaut atexit()
    Bonjour a tous !

    J'utilise la routine atexit(fin_prog) pour effectuer quelques taches a la fin de mon programme.... le probleme, c'est que mon prog utilise des process fils... or, lorsqu'ils sont forkes, la redirection de atexit() vers fin_prog fonctionne toujours, et du coup, ils effectuent ce que devrait faire seulement le pere....

    Ya t'il un moyen d'annuler la redirection de atexit(), ou alors je fais simplement un test dans ma fonction fin_prog pour voir si je suis bien le pere ?

    Merci d'avance !
    "Dis oui à celui qui te dit non, et il te dira peut-être.", Gogoye - Les Proverbes à la Con

  2. #2
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2002
    Messages : 290
    Points : 325
    Points
    325
    Par défaut
    A ma connaissance non...

    par contre les fonctions enreigistrée par atexit sont appellées dans l'ordre inverse de l'enregistrement, donc si le fils enregistre une fonction elle sera appellée avec celles du pere.

    de Plus les apopels a exec (toutes formes) annulent, bien sur, toutes les fonction enregistrées....

  3. #3
    Membre du Club
    Inscrit en
    Mars 2002
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 88
    Points : 59
    Points
    59
    Par défaut
    Oui, bein je suis d'accord avec toi...

    du coup, je suis oblige dans ma fonction fin_prog de faire un test getpid()==fatherspid

    Merci quand meme !
    "Dis oui à celui qui te dit non, et il te dira peut-être.", Gogoye - Les Proverbes à la Con

  4. #4
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2002
    Messages : 290
    Points : 325
    Points
    325
    Par défaut
    Citation Envoyé par Gogoye
    Oui, bein je suis d'accord avec toi...

    du coup, je suis oblige dans ma fonction fin_prog de faire un test getpid()==fatherspid

    Merci quand meme !
    par exemple... ou dans le flis d'enregistrer un fonction qui positionnerait etc...

    mais ca revient bien au meme...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [python 2.7] Stopper un thread grâce à atexit.register
    Par pfeuh dans le forum Général Python
    Réponses: 6
    Dernier message: 06/08/2014, 14h36
  2. fonction atexit et arguments
    Par dvp_zero dans le forum C
    Réponses: 10
    Dernier message: 09/11/2009, 09h49
  3. [SDL] Problème atexit
    Par erniubo dans le forum SDL
    Réponses: 0
    Dernier message: 20/05/2009, 21h36

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