C/C++ [C++] Le multithreading et la réception de sockets

Inscrit
12 Octobre 2012
Messages
21
Reactions
0
#1
Bonjour a tous,

Je commence le C++ depuis peu et je voulais savoir comment utiliser les threads? Je sais, c'est un peu une grosse "question" y'a google !
Mais je suis pas certain d'avoir compris le principe. Dans le cadre d'un bot pixel ( mono compte, fauche, craft ) qui clique et se sert des paquets reçus, comment dois-je m'y prendre?

Niveau théorique je voyais ça comme ça:

Thread 1:
Début de la boucle
Recherche du pixel a l'écran
Si présent, alors clic
Vérification des messages envoyés par le thread 2
En cas de popup, d'inventaire plein, de debut de combat, reagir en consequence
Retour en haut de la boucle

Thread 2:
Début de la boucle
Capture permanente des paquets entrants en provenance de D2
Verification des paquets entrants
En cas de paquets signalant une popup ou autre, envoyé le message en conséquence au Thread 1
Retour en haut de la boucle


Voila comment c'est dans ma tete x)..
J'imagine que ca a peut etre rien avoir, si oui j'attends vos réponses ^^
Il faudrait aussi gérer un systeme de file d'attente etc.. ( Bref c'est pas tres clair du tout )
 

Labo

Membre Actif
Inscrit
16 Aout 2013
Messages
799
Reactions
15
#2
Tu n'as pas besoin de faire un second thread (pas besoin de te compliquer la vie avec les threads+sockets) !
Tu peux tout simplement faire un test pixel pour la fenêtre popup et le combat et tu ajoutes les deux à la boucle.
 

ToOnS

Membre Actif
Inscrit
8 Avril 2009
Messages
974
Reactions
0
#3
Bonjour , c'est assez "farfelu" de vouloir utiliser les pixels ET les sockets (sauf pour une dedicace a FastFrench qui voulait faire comme ca au tout debut ??) si tu fais du pixels alors tu detectes les pixels d'un "popup" et tu t'en fous des sockets , si tu fais du socket alors tu regardes les messages et tu t'en fous des pixels (puisque de toute facon y'a pas de jeu donc pas de pixels) mais les 2 en meme temps c'est "useless" comme ils disent dans le nord
 

Geraff

Administrateur
Membre du personnel
Inscrit
13 Mars 2008
Messages
564
Reactions
0
#4
par contre tu peux récupérer les infos de l'environement par socket et cliquer dessus sans regarder les pixels du coup.
Ca t'évite un code pour le pathfinding etc. Et c'est le client qui envoie tous les packets, le bot ne fait qu'écouter et cliquer.
 
Inscrit
19 Octobre 2010
Messages
214
Reactions
0
#5
Tout à fait, et je pense que c'est une approche qui peut être très robuste contre la détection (si on n'envoie ni on ne modifie jamais aucun paquet directement). Mais c'est aussi une approche assez complexe car elle cumule tous les problèmes.
 
Haut Bas