Bonjour,
j'ai un gros problème dans mon prog: j'ai plusieurs threads qui communiquent en même temps avec des logiciels externes pour récolter des stats. La communication se fait par TCP de la manière suivante:
// Socket creation skt_client = socket(AF_INET, SOCK_STREAM, 0); if(skt_client == INVALID_SOCKET) throw string("ERROR"); // Socket connection if(connect(skt_client, (SOCKADDR *)&sin_client, sizeof(sin_client)) != SOCKET_ERROR) { // Creating message to be sent message[0] = ...; message[1] = ...; message[2] = ...; message[3] = ...; message[4] = ...; if(send(skt_client, message, 5, 0) == SOCKET_ERROR) throw string("ERROR"); if(recv(skt_client, message, BUFFER_LENGTH, 0) != SOCKET_ERROR) { cout << "OK" << endl; } |
Le problème c'est que de temps en temps le script s'arrête entre le
qui n'affiche pas d'erreur et le
, ce qui bloque tout mon prog. Je pense qu'il s'agit du timeout qui n'a pas lieu mais je ne sais pas comment résoudre le problème. Quelqu'un pourrait m'aider s'il vous plait ?