hum... si tu comprends pas trop les arguments à passer, j'ai peur que ce ne soit parce que tu n'as pas bien compris le mécanisme des threads. M'enfin bon: un petit eclaircissement s'impose. Alors on prend la doc et on regarde ce qui est marqué
CWinThread* AfxBeginThread( AFX_THREADPROC pfnThreadProc,
LPVOID pParam,
int nPriority = THREAD_PRIORITY_NORMAL,
UINT nStackSize = 0,
DWORD dwCreateFlags = 0,
LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL );
pfnThreadProc:
--------------
pointeur sur la fonction qui sera executée dans le thread. Ne peut pas être NULL
(de toute façon, faire un thread avec une fonction NULL... autant ne rien faire )
Cette fonction doit être du type suivant:
UINT MyControllingFunction( LPVOID pParam );
(rappel: LPVOID = void *)
pParam:
--------------
paramètre à passer en argument à la fonction qui sera executée dans le thread.
typiquement, si tu as plusieures paramètres à passer à la fonction qui sera
executée dans le thread, tu définies une structure qui contient tous ces aruments.
Puis tu défini la fonction pricipale du thread (pfnThreadProc) comme ayant en
paramètre un void *, sur lequel tu feras un casting explicite dans le format de
ta structure.
exemple:
struct toto{
int a;
float b;
};
UINT MyControllingFunction( LPVOID pParam )
{
int aa = (toto *) pParam->a;
int bb = (toto *) pParam->b;
}
nPriority:
--------------
ben c la priorité du thread... tu laisses celle par défaut, c en général
suffisant. Si vraiment ca va pas, tu changeras...
pour info:
Priority Meaning
THREAD_PRIORITY_ABOVE_NORMAL Indicates 1 point above normal priority for the priority class.
THREAD_PRIORITY_BELOW_NORMAL Indicates 1 point below normal priority for the priority class.
THREAD_PRIORITY_HIGHEST Indicates 2 points above normal priority for the priority class.
THREAD_PRIORITY_IDLE Indicates a base priority level of 1 for IDLE_PRIORITY_CLASS, NORMAL_PRIORITY_CLASS, or HIGH_PRIORITY_CLASS processes, and a base priority level of 16 for REALTIME_PRIORITY_CLASS processes.
THREAD_PRIORITY_LOWEST Indicates 2 points below normal priority for the priority class.
THREAD_PRIORITY_NORMAL Indicates normal priority for the priority class.
THREAD_PRIORITY_TIME_CRITICAL
nStackSize
--------------
spécifie la taille de la pile (en octets) du thared.
Tu laisses la valeur par défaut = 0 -> même taille que le processus qui créé ce thread
dwCreateFlags:
--------------
Flag pour le status du thread. 2 valeurs possibles:
CREATE_SUSPENDED : le thread est créé à l'état suspendu. Il faudra ensuite le lancer...
0 : le thread est démarré immédiatement apres sa création
dans le doute, tu laisses la valeur par défaut.
et puis pour le reste tu laisses les valeurs par défaut.
Et puis si c pas clair, et ben précises un peu ce que tu ne comprends pas.