bonjour
est ce que quelqu un serai m' aider car je ne sais pas comment utiliser la méthode des threads car j 'en ai besoin pour une application sur visual studio.net c++ , j' ai regardé dans les tuto mais cela ne m'a pas aidé.
merci bcp
Version imprimable
bonjour
est ce que quelqu un serai m' aider car je ne sais pas comment utiliser la méthode des threads car j 'en ai besoin pour une application sur visual studio.net c++ , j' ai regardé dans les tuto mais cela ne m'a pas aidé.
merci bcp
je ne sais pas si quelqu'un peut t'aider, mais ce quelqu'un y arriverait mieux si tu décrivais exactement ce que tu veux faire...
je dois ouvrir une communication série ( un port) avec la méthode des threads
tu veux lire sur un port série, en parallèle de quelque chose d'autre ?
mon but est d ouvrir le port com pour échanger des données avec un autre ordi ou autre
Et pourquoi un thread ?
http://c.developpez.com/faq/vc/?page...WithSerialPort
pour minimiser le taux de charge du CPU c' est pour un projet
Nico-Pyright a demandé de donner plus de détails : c'est un projet MFC ou non ?Citation:
Envoyé par stgi02
oui c' est un projet MFC
a moins que tu fasses du multi-processeur, faire un thread n'aura pas d'impact.Citation:
Envoyé par stgi02
A priori la charge CPU nécessaire pour lire/écrire des données depuis le port COM ne dépend pas du nombre de thread.Citation:
Envoyé par stgi02
j aimerai savoir comment on crée un thread , car cette demande est cité dans le chahier de charge....
t'as été voir dans la faq ? http://c.developpez.com/faq/vc/?page=ProcessThread
oui mais il y a plein chose que je ne comprends pas... je chercher sur google mais...
qu'est-ce que tu ne comprends pas ?
ceci et ainsi que la suite qui s' accompagne dans le tuto
Utilisation de CreateThread():
HANDLE CreateThread(
LPSECURITY_ATTRIBUTES lpThreadAttributes, // SD
SIZE_T dwStackSize, // initial stack size
LPTHREAD_START_ROUTINE lpStartAddress, // thread function
LPVOID lpParameter, // thread argument
DWORD dwCreationFlags, // creation option
LPDWORD lpThreadId // thread identifier
);
merci
ce n'est pas si compliqué, peut-etre que la faq n'est pas très explicite, n'hésite pas à aller voir dans la msdn.
CreateThread te permet de lancer une fonction en parallèle de ton programme
te permet de lancer en parallèle la fonction "fonctionParallele", avec les paramètres "params", sachant que la fonction devra avoir ce prototype :Code:HANDLE hThread = CreateThread(0, 0, fonctionParallele , (LPVOID) params, 0, 0);
Code:DWORD WINAPI fonctionParallele (LPVOID param)
le handle il représente un objet qui controle d'autre objet
le handle que te retourne createThread est ce qui va te permettre d'accèder à ton thread (par exemple, si tu veux le terminer).
Il faudra utiliser CloseHandle une fois que tu n'aurais plus à faire avec ce thread
Dans ce cas, le HANDLE identifie le thread créé. Il te sert à attendre la fin d'exécution du thread par exemple, ou à le tuer etc...
merci de votre aide,
mais mon probleme est que je ne sais pas comment je dois l utiliser dans mon projet, ou je dois le déclarer et à quoi ça va me servir
ecoute, c'est pas compliqué.
Un thread ca sert à paralléliser une action, si tu n'as pas une raison d'utiliser un thread, c'est que tu n'en as pas besoin.