Fehler ist behoben.
Das hat mir dabei geholfen.
Da ein beenden der Verbindung durch den Client nicht beim Server die dazugehörigen file handles freigegeben hat kam es dazu, dass nach ca. 20 min das Limit an file handles erreicht wurde. Ich musste also nach dem Beenden der Client-Verbindung ein close(FILE_HANDLE) machen:
Code:
...
if ((read_size = recv(conn_desc, pnAus, sizeof(pnAus), 0)) > 0)
{
gDatenVorhanden = TRUE;
if ((send_size = send(conn_desc, pnEin, sizeof(pnEin), 0)) > 0)
{
}
}
if (read_size == -1)
{
printf("%s: recv failed! %s\r\n", getTimestamp(), strerror(errno));
fprintf( stderr, "%s: recv failed! %s\r\n", getTimestamp(), strerror(errno) );
}
close(conn_desc); // xxAG fix für
handle limit
...