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

POSIX C Discussion :

pthread_t vs int


Sujet :

POSIX C

  1. #1
    Membre du Club
    Inscrit en
    Avril 2008
    Messages
    96
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Avril 2008
    Messages : 96
    Points : 44
    Points
    44
    Par défaut pthread_t vs int
    Bonjour à tous,

    j'ai remarqué dans l'utilisation de thread qui je peut utiliser dans la déclaration de thread (plus précisament lancement de thread) , parfois utilisation de pthread_t et parfois int

    est ce que quelqu'un peut m'indiquer la difference entre le deux ??

    merci

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 368
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 368
    Points : 23 622
    Points
    23 622
    Par défaut
    C'est beaucoup trop vague. Il faut que tu nous donnes les déclarations exactes que tu utilises pour que l'on te dise si c'est correct ou pas. Mais dans tous les cas :

    • pthread_create() renvoie un int, mais il s'agit d'un code d'erreur (nul en cas de réussite). Ce n'est en aucun cas le handler du thread ;
      RETURN VALUE
      If successful, the pthread_create() function shall return zero; otherwise, an error number shall be returned to indicate the error.
    • pthread_t est, comme beaucoup d'identifiants de ressource, un entier. Soit int, soit unsigned long int, sous Linux par exemple. Seulement, ça, tu n'es pas censé le savoir. Donc, si tu utilises un entier ordinaire en lieu et place de pthread_t, cela fonctionnera, mais ce sera par accident. Rien ne te garantit que ton programme continuera à fonctionner normalement si tu changes de plate-forme ou si la bibliothèque évolue.
      Code C : Sélectionner tout - Visualiser dans une fenêtre à part
      1
      2
      3
      /* Thread identifiers.  The structure of the attribute type is not
         exposed on purpose.  */
      typedef unsigned long int pthread_t;

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2006
    Messages : 107
    Points : 124
    Points
    124
    Par défaut
    Pour appuyer la réponse d'Obsidian :

    "Un type opaque pthread_t est utilisé pour distinguer les différents threads d'une application, à la manière des PID qui permettent d'identifier les processus. Dans la bibliothèque NPTL le type pthread_t est implémenté sous la forme d'un unsigned long, mais sur d'autres systèmes il peut s'agire d'une structure. On se disciplinera donc pour employer systématiquement la fonction pthread_equal() lorsqu'on voudra comparer deux identifiants de threads. "

    Programmation système en C sous linux, Christophe Blaess

Discussions similaires

  1. [.COM] Réserver de la RAM fct 48h int 21h
    Par bulerias dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 06/12/2010, 14h33
  2. calcul melangeant int et long int ?
    Par ThR dans le forum C
    Réponses: 2
    Dernier message: 06/01/2003, 01h13
  3. [Dev c++ 4] implicite declaration of function "int kbhi
    Par Torpedox dans le forum Dev-C++
    Réponses: 5
    Dernier message: 01/01/2003, 13h37
  4. "ALTERER" une col. NULL en NOT NULL - Int
    Par Gandalf24 dans le forum SQL
    Réponses: 2
    Dernier message: 28/12/2002, 00h07
  5. Les INT en mode protégé
    Par le mage tophinus dans le forum x86 16-bits
    Réponses: 8
    Dernier message: 05/12/2002, 16h13

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