Bonjour,
j'ai un petit problème dans mon programme que je n'arrive pas a comprendre : le principe est que au début je créé un nouveau thread qui exécute une fonction bien précise et, dans le main, une interface attend un évènement de la souris. Si celui-ci est détecté, on arrête le thread courant et on le lance à nouveau sous le même nom avec un argument différent. Ce qui donne (succinctement) :
Mon problème étant que, pour une raison inconnue, quand l'évenement est détecté le thread ne se relance pas du tout. Tout est bien détecté et la variable est bien modifiée mais impossible de créer à nouveau le thread.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 pthread_t MusicThread; pthread_create(&MusicThread, NULL, play_musique, &fichier); if (bouton_clic()) { pthread_cancel(MusicThread); fichier.position_rep++; pthread_create(&MusicThread, NULL, play_musique, &fichier); }
Avez-vous une idée ?
Merci d'avance.
PS: j'utilise Code::Blocks et MinGW sous Windows.
Partager