Programmer convenablement un serveur Socket avec Indy
Salut tout le monde !
Ce que j'aimerais apprendre c'est comment manier les threads de chaque client qui se connectera au serveur issu de TIdTCPServer
Voici un code que j'ai écrit qui montre que je ne sais pas que faire des TIdPeerThread créé à chaque client qui se connecte: il s'agit de broadcaster à tous les clients un message qu'un client a envoyé
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| void __fastcall TServer1Form::TcpServerConnect(TIdPeerThread *AThread)
{
nThreadNumber++;
tClThread[nThreadNumber] = AThread;
AThread->Connection->WriteLn("Connexion avec le serveur OK ...");
}
//---------------------------------------------------------------------------
void __fastcall TServer1Form::TCPServerExecute(TIdPeerThread *AThread)
{
AnsiString strTmp;
int i, j;
while (AThread->Connection->Connected())
{
strTmp = AThread->Connection->ReadLn();
if (strTmp[0] == '$')
{
tClThread[i]->Connection->WriteLn(strTmp);
}
}
} |
Que faire des AThread ?
En effet, ce code est du C++ Builder qui est proche de Delphi