Bonjour
Je me suis lancé dans le multi-thread et je suis tombé sur une difficulté que je ne comprend pas :
J'ai pour le moment un thread principale et un thread graphique. Mais un bug survient toujours au même endroit dans le thread 2 (graphique) et sur une ligne gérant le clavier dans le principale :
thread 1 : if (event.type == Event::Closed || Keyboard::isKeyPressed(Keyboard::Escape))
thread 2 : window->clear(sf::Color(0,0,0,255));
Je me demandais surtout pourquoi ça arrive (variable partagée entre clear et le clavier?). Sinon pour résoudre le souci ça passe en mettant des mutexs partout mais ça m’embête un peu.
Pour plus de détails :
J'ai bien placé le window->setActive(false);
et j'ai cette erreur :
HackSlash4: ../../src/xcb_io.c:635: _XReply: Assertion `!xcb_xlib_threads_sequence_lost' failed.
Aborted (core dumped)
Je suis sur linux et j'utilise le cpp11 pour mes threads.