Virtual FMAN forum
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Virtual FMAN forum

Virtual FMAN forum
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
-35%
Le deal à ne pas rater :
Pack Smartphone Samsung Galaxy A25 6,5″ 5G + Casque Bluetooth JBL
241 € 371 €
Voir le deal

 

 Gestion souris/clavier en thread

Aller en bas 
3 participants
AuteurMessage
le_duche

le_duche


Nombre de messages : 60
Age : 39
Localisation : Bruxelles
Date d'inscription : 07/12/2005

Gestion souris/clavier en thread Empty
MessageSujet: Gestion souris/clavier en thread   Gestion souris/clavier en thread EmptyLun 13 Fév à 1:31

Voilà j'ai découvert les threads recemment (grace aux questions insistantes de Sn00bino...) et j'envisage de gérer la souris et le clavier via les thread.

En gros, dans chaque projet j'aurais une variable de type TypeSC (classe qui contient la gestion de la souris et du clavier, càd les variables pour les touches et quelques fonctions de base) et une fonction InitGraphisme() qui lancerait un thread de gestion. Ce thread ne ferait qu'actualiser le clavier et la souris en modifiant une varable de type TypeSC globale du fichier "graphisme.c" sur laquel les fonctions d'affichage pourraient aller piocher.
Danger ou bonne idée ?
Revenir en haut Aller en bas
FVIRTMAN
Admin
FVIRTMAN


Nombre de messages : 78
Date d'inscription : 11/11/2005

Gestion souris/clavier en thread Empty
MessageSujet: Re: Gestion souris/clavier en thread   Gestion souris/clavier en thread EmptyLun 13 Fév à 15:18

Hum ! Attention, si tu fais du multithreading, qui accede aux memes variables, de les protéger avec des mutex (sorte de porte des chiottes qui marque "occupé" quand quelqu'un utilise déja la variable, et fait donc attendre les autres threads).

Par exemple, il peut etre dangereux que 2 threads accedent en meme temps a la variable a, ça peut donner des résultats faussés.

L'exemple classique :

tu prends une variable a qui vaut 0
si tu as 2 threads dont le but est simplement d'ajouter 1 à "a" puis immédiatement de retirer 1.
en gros, tu veux osciller entre 0 et 1.

si tu lances les 2 threads a la fois, tu auras a qui passera des fois a 2 : cela voudras dire que 2 threads sont dessus en meme temps, cela n'était pas forcément prévu.

Que 2 threads accedent aux memes données en meme temps peut poser de gros gros soucis comme ça, des valeurs improbables, etc !

Je ne te raconte meme pas si tu geres une liste chainée et et que 2 threads en meme temps sont dessus : l'un supprime un élément, l'autre en ajoute un : la ça peut poser des plantages, car le premier n'aura pas fini d'enlever que le 2e ajoutera déja sur une liste non valide....

Cependant, je réfléchis et je me dis que pour ce que tu veux faire, peut etre ne pourrait il pas y avoir de soucis ? a voir, mais j'en mettrai pas ma main a couper, on a tellement vu des erreurs farfellues liées a ça...
Revenir en haut Aller en bas
http://perso.numericable.fr/fvirtman
le_duche

le_duche


Nombre de messages : 60
Age : 39
Localisation : Bruxelles
Date d'inscription : 07/12/2005

Gestion souris/clavier en thread Empty
MessageSujet: Re: Gestion souris/clavier en thread   Gestion souris/clavier en thread EmptyMar 14 Fév à 3:37

Ce qui est sur, c'est que je vais utiliser les thread pour ma boucle principale de jeu (pour mon scrabble) avec un truc du genre:

Code:

while(!CoupDefini);
Coup = ...

et pendant ce temps là il y a un thread qui tourne et récupère un coup (soit sur le pc meme, soit sur un autre pc, soit sur une IA, soit sur le net,...) et qui met la variable CoupDefini à true lorsque c'est fini...
Ca ca ne devrait pas bogger q-même ?

Pour la souris et le clavier, normalement il n'y auras pas de problème car seul 1 thread pourra modifier les données, les autres se contenteront de les lire (pas le choix puisque je fais une classe avec les données private).
Revenir en haut Aller en bas
eng2011




Nombre de messages : 2
Date d'inscription : 19/08/2011

Gestion souris/clavier en thread Empty
MessageSujet: Nintendo DS    Gestion souris/clavier en thread EmptyVen 19 Aoû à 18:40

一个可爱的人,在游戏里!里面有很多任务,你要有信心把他们都完成哦
Revenir en haut Aller en bas
eng2011




Nombre de messages : 2
Date d'inscription : 19/08/2011

Gestion souris/clavier en thread Empty
MessageSujet: Nintendo DS    Gestion souris/clavier en thread EmptyVen 19 Aoû à 18:41

Gestion souris/clavier en thread Nintendo DS
Revenir en haut Aller en bas
Contenu sponsorisé





Gestion souris/clavier en thread Empty
MessageSujet: Re: Gestion souris/clavier en thread   Gestion souris/clavier en thread Empty

Revenir en haut Aller en bas
 
Gestion souris/clavier en thread
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Thread ou pas Thread
» Controle du pointeur avec la souris

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Virtual FMAN forum :: Tutorial C++ :: Algorithmes de jeux-
Sauter vers:  
Ne ratez plus aucun deal !
Abonnez-vous pour recevoir par notification une sélection des meilleurs deals chaque jour.
IgnorerAutoriser