SocketTimeouts

Festlegen eines Timeouts für das Senden und Empfangen der Daten eines Sockets

bool  SocketTimeouts(
   int           socket,               // Socket
   uint          timeout_send_ms,      // Timeout für das Senden von Daten
   uint          timeout_receive_ms    // Timeout für das Empfangen von Daten
   );

Parameter

socket

[in]  Handle des Sockets, das von der Funktion SocketCreate erzeugt worden war. Wurde ein ungültiger Handle übergeben wird, wird der Fehler 5270 (ERR_NETSOCKET_INVALIDHANDLE) der Variablen _LastError zugewiesen.

timeout_send_ms

[in]  Timeout für das Schreiben der Daten in Millisekunden.

timeout_receive_ms

[in]  Timeout für das Lesen der Daten in Millisekunden.

Rückgabewert

Gibt true im Erfolgsfall zurück, andernfalls false.

Hinweis

Verwechseln Sie nicht die Timeouts der Systemobjekte mit denen, die für das Lesen der Daten mit SocketRead eingestellt wurden. SocketTimeout setzt einmalig Timeouts für ein Socket-Objekt im Betriebssystem. Diese Timeouts sind auf alle Funktionen zum Lesen und Senden von Daten über diesen Sockel anzuwenden. In SocketRead wird der Timeout für einen bestimmten Datenlesevorgang eingestellt.

Die Funktion kann nur von Expert Advisors und Skripten aufgerufen werden, da sie in ihrem eigenen Ausführungsthread laufen. Wenn sie ein Indikator aufruft, wird von GetLastError() der Fehler 4014 – "Funktionsaufruf ist nicht erlaubt" ausgeworfen.