PDA

Voir la version complète : [thread] fait rien du tout


Sirion
23/09/2005, 15h45
Bonjour, j'ai voulu tester les tread pour une petite application mais sa ne veut pas marcher. je creer le thread comme ceci:

SDL_Thread *yipa = SDL_CreateThread( ThreadClavier, this );

if(!yipa)
{
cout<<"erreur: le thread clavier n'a pu etre crée."<<endl;
return false;
}
pizza->etat_boucle = true;


et la fonction Theadclavier:
int ThreadClavier(void * ahah)

{
cout<<"info: thread clavier crée"<<endl;


CPizza *pizza = (CPizza*)ahah;

char cmd[255];



while(pizza->etat_boucle)

{

cin>>cmd;


if(cmd == "quit")

{

pizza->etat_boucle = false;

}





}



return 0;

}

Corkus
23/09/2005, 22h08
Est ce que la variable pizza->etatboucle dans la fonction ThreadClavier est bien a true? Il faudrait peut-être la mettre a true dans la fonction avant de rentrer dans la boucle.

Sirion
24/09/2005, 21h26
heu le problem ne vennait pas de la, il ne se lancait pas du tout, mais maintenant sa marche :)

mais ya encore un problem, quand je fais des saisies au clavier (quit) sa fais rien, j'ai tester en fessant un segfault et la le thread ne quitte pas et je peut faire la saisie.

c'est un petit embetant :D si on peut me dire pourquoi.

asmanur
25/09/2005, 07h15
Tuoujours le meme problème lol
On ne peut pas comparer un ableau de caractère et une chaine directement, un tableau n'est ni plus ni moins qu'un pointeur.
Il faut passer par strcmp
if(strcmp(tabCar,"chaine à comparer"))
tu peux aussi donner deux tableau de caractères

Sirion
01/10/2005, 15h12
bon ben voila sa marche, merci.