Bon... J'ai vraiment des souci avec les threads dans mon programme...
Pour créer une thread j'utilise la fonction :
Qui à l'aire de fonctionné correctement si ce n'est qu'elle plante inlassablement lorsque je l'appel et que j'ai déja une thread en route dans mon programme.
Code : Sélectionner tout - Visualiser dans une fenêtre à part thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)startRoutine, _params, 0, threadId);
Engros si je faire :
Création de thread 1 ... OK
Création de thread 2 ... Segfault
Création de thread 1 ... OK
Fermeture de thread1 ... OK
Création de thread 2 ... OK
Fermeture de thread2 ... OK
etc...
Dr. Mingw me ressort ca :
Je suis completement paumé la :/
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 kiriliam_server.exe caused an Access Violation at location 7c8107c6 in module kernel32.dll Writing to location e9746365. Registers: eax=e9746365 ebx=00000000 ecx=00000b0c edx=7c91eb94 esi=ffffffff edi=00000001 eip=7c8107c6 esp=0022f928 ebp=0022fd54 iopl=0 nv up ei ng nz na po nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000286 Call stack: 7C8107C6 kernel32.dll:7C8107C6 CreateRemoteThread 7C81084D kernel32.dll:7C81084D CreateThread 004058B6 kiriliam_server.exe:004058B6 Thread::Start(void*) thread.cpp:53 LogWriter::Echo("Thread : param=%p\n", _params); ... > thread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)startRoutine, _params, 0, threadId); LogWriter::Echo("Thread : param=%p\n", _params); ...
Partager