Bonjour,

Je veux créer un seveur multi-client avec des threads...,
j'essayé de suivre et de comprendre le code que j'ai trouvé sur un article

http://khayyam.developpez.com/articl.../multithreads/

mais j'ai du mal à comprendre la partie création des Threads et surtout la fonction ThreadLauncher , elle me parait complique je vous laisse le liens de cet article et le code de la fonction TheadLauncher , si quelqu'un peut m'explique, je serai très content de pouvoir continuer mon petit projet
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
DWORD WINAPI server::ThreadLanceur(void * p)
{
    struct thread_param *Obj = reinterpret_cast<struct thread_param*>(p);               
    server *s = Obj->ser;        
    return s->ClientThread(Obj->soc);
}
ici j'essaye de faire mon traitement mais y a que la réception qui marche

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
17
18
19
DWORD server::ClientThread(SOCKET soc)
{
    cout << "thread client demarre" << endl;
    char buffer[100];
    //**** envoi ****
    strcpy(buffer, "coucou \n");
    send(soc, buffer,strlen(buffer), 0);
    cout<<"message envoye"<<endl;
    int reponse = 0;	
    do
    {
        //	cout<<"******** reception ...********"<<endl;
        reponse = recv(soc, buffer, sizeof(buffer), 0);
        cout<<"reponse"<<reponse<<endl;
        buffer[reponse]='\0';
        cout<<"msg recu "<<buffer<<endl;
    } while(reponse=0);
    return 0;
}
si vous pouvez lire l'article , ça sera mieux pour bien comprendre la partie qui me pose problème

Merci