|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Inscription : septembre 2009 Messages : 30 ![]() |
Bonjour,
Voilà j'ai d'un côté un processus, un jeu de plateformes ( http://tuxworld.tuxfamily.org). Processus A Et de l'autre côté un processus qui détermine la position des mains du joueur à l'aide de la kinect Xbox. Processus B Question 1 : Maintenant j'aimerais que le processus A questionne le processus B sur les coordonnées des mains du joueur. Mais il faut que ce soit rapide et efficace, pas de temps mort. Donc j'hésitais entre un échange de messages asynchronisés entre les processus , et faire une zone de mémoire partagée avec mutex. C'est quoi le mieux ? Si vous avez d'autres idées suis preneur. Question 2 : On peut forcer le système d'exploitation à partager les processus suivant les coeurs du processeur ? Genre Core 1 -> processus A Core 2 -> processus B PS suis sous linux. Merci |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() Inscription : novembre 2008 Messages : 974 ![]() |
Dans un premier lieu, j’utiliserai dbus. C’est assez facile à mettre en œuvre avec les bindings qt ou la glib, et tu peux faire des appels asynchrones.
Pour ta deuxième question, c’est presque un non-sens : laisse l’os gérer ça, les cas où tu sauras le faire mieux que lui sont extrêmement rares.
__________________
HADOPI - Le Net en France : black-out |
|
|
00
|
|
|
#3 |
|
Inscription : septembre 2009 Messages : 30 ![]() |
Merci,
Bon je me suis lancé dans dbus / glib. J'ai un peu galéré niveau librairies et fichiers entêtes dans mon cmake mais c'est résolu. Par contre j'ai du mal à trouver des exemples et des tutoriaux. Je me suis basé là dessus, mais j'ai un horrible segfault. http://www.ibm.com/developerworks/li...bus/index.html Des sites sympas pour apprendre à envoyer des messages avec dbus ? |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() ![]() Inscription : novembre 2008 Messages : 974 ![]() |
Je te conseille, sauf si tu as une très bonne raison de ne pas le faire, d’utiliser les bindings qt. À défaut, rabats-toi sur la glib, mais ne fais pas du dbus natif --> ça ne servira qu’à te compliquer la vie.
Pour quelques exemples : http://doc.qt.digia.com/stable/intro-to-dbus.html http://dbus.freedesktop.org/doc/dbus-tutorial.html
__________________
HADOPI - Le Net en France : black-out |
|
|
00
|
|
|
#5 |
|
Inscription : septembre 2009 Messages : 30 ![]() |
Merci,
J'ai un peu bossé sur dbus, avec qt c'est mort car la librairie est trop lourde juste pour dbus, j'ai préféré glib. Merci je dormirais moins bête ce soir. Cependant pour résoudre mon problème je vais faire plus simple, lancer un thread avec mutex, plutôt que de complier deux programmes totalement séparés. |
|
|
00
|
|
|
#6 | ||||||
|
Inscription : septembre 2009 Messages : 30 ![]() |
Maintenant je me retrouve avec un problème, j'ai l'impression que mon mutex ne marche pas :-(
J'ai les deux threads qui verrouillent en même temps : J'ai à l'écran K L, puis M L Merci Main.cpp Code :
Code :
Code :
|
||||||
|
|
00
|
|
|
#7 |
|
Inscription : septembre 2009 Messages : 30 ![]() |
Ha j'ai trouvé, en dehors des mutex mon thread accédait au même vecteur que le thread parent.
En fait j'avais omis le fait que vector<float>a, b; puis faire un a = b. Ca ne clone pas les vecteurs, donc je suis passé par a.assign(...) et ça marche beaucoup mieux. |
|
|
00
|
Copyright © 2000-2013 - www.developpez.com