[WIN32 & LINUX] THREADS C++

Signaler
Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
-
Messages postés
21
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
5 décembre 2012
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/19908-win32-linux-threads-c

Messages postés
21
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
5 décembre 2012

C'est juste un soucis d'entete... j'ai tout mis dans un meme fichier dans un certain ordre, it work!
Messages postés
59
Date d'inscription
lundi 21 août 2006
Statut
Membre
Dernière intervention
17 juillet 2009

Donne nous les messages d'erreurs que donne le compilateur
Messages postés
21
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
5 décembre 2012

Ce source m'interesse mais lors de la compilation, ça boggue. Je suis sous visual c++ 2008. J'ai ouvert un projet console, j'ai bien mis _MT comme option, rien ne change. Pourrai-je avoir un peu d'aide, s'il vous plaît ^^.
Merci
Messages postés
59
Date d'inscription
lundi 21 août 2006
Statut
Membre
Dernière intervention
17 juillet 2009

Bonjour,
Merci pour la source ça vas me servir. Je suis d'accord avec toi ; c'est intéressant d'avoir un objet thread.

J'ai une petite remarque :
Le programme de test lève une exception après : "Demande d'arrêt du compteur numéro 3".
J'ai essayé de mettre : monTemps3.Attendre(); après l'arrêt mais sans succès.
J'ai du remplacer un bout de code pour que ça marche : (je me suis passé des exceptions)

#ifdef WIN32

unsigned __stdcall x_Filament::Filament( void * pthis ) {

#else

void * x_Filament::Filament( void * pthis ) {

#endif

//try

if(pthis!=NULL){

x_Filament * pParent = (x_Filament*)pthis;

pParent->bExecution = true;

pParent->Traitement();

}

//catch(...)

//{

//}

#ifdef WIN32

return(0);

//_endthreadex(0);

#else

pthread_exit(0);

#endif

}

Sinon, sais tu combien de thread peux t-on créer dans un soft ?

Pour info la sortie de g++ -v :
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.4.1-4ubuntu9' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared --enable-multiarch --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --program-suffix=-4.4 --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --disable-werror --with-arch-32=i486 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix

gcc version 4.4.1 (Ubuntu 4.4.1-4ubuntu9)
Afficher les 28 commentaires