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

Linux Discussion :

La fonction signal en c


Sujet :

Linux

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 63
    Points : 60
    Points
    60
    Par défaut La fonction signal en c
    Salut tout le monde!!
    Bon voila, je suis débutant avec les signaux sous unix!!
    Y'as 2 normes ANSI et POSIX
    dans la norme ANSI on trouve signal(le_signal,fct) et dans POSIX on trouve sigaction(...)
    Bon mon problème se situe dans la fonction signal.
    Voila mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    #include<stdio.h>
    #include<signal.h>
     
    void handler();
     
    int main()
    {
    int s;
    signal(SIGALRM,handler);
    printf("Vous avez un essaie qui dure 10 seconde au max\n");
    alarm(10);
    scanf("%d",&s);
    alarm(0);
     
    }
     
    void handler()
    {
      printf("Délai écoulé");
    }
    Le problème c'est que le prgramme reste bloqué jusqu'à ce que je lui entre un entier, si les 10 seondes sont écoulé il m'affiche 'délai écoulé' sinon il m'affiche rien, par contre dans sigaction, quand les 10 secondes sont terminés (le signal est émis) il m'affiche le message 'délai écoulé'. Est ce que la fonction signal fonctionne ainsi?? ou est ce que j'ai commis une faute??

    Cordialement Verboz

  2. #2
    Membre éclairé Avatar de MatRem
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 750
    Points : 693
    Points
    693
    Par défaut
    Je ne comprends pas bien ton problème... Chez moi ton exemple fonctionne corectement.

  3. #3
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 681
    Points
    18 681
    Par défaut
    je te conseille vivement de lire cela... dans un premier temps

    http://www.ensta.fr/~gueydan/Poly/Html/node15.html

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

Discussions similaires

  1. Réponses: 17
    Dernier message: 01/02/2008, 18h14
  2. Utilisation de la fonction SIGNAL en C
    Par Xystres dans le forum Linux
    Réponses: 2
    Dernier message: 15/01/2008, 02h17

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