Das Problem besteht darin, dass mit den Zeilen
der Socket nicht geblockt wird. Wenn ich diese Zeilen weglasse und die Waage aus irgendeinem Grund nicht antwortet, bleibt das Programm ohne Fehlermeldung stehen.Code:flags = fcntl(sock: F_GETFL); flags = %bitor(flags: O_NONBLOCK); fcntl(sock: F_SETFL: flags);
Der Versuch mit
ein Timeout zu setzen, bringt leider auch keinen Erfolg. Habe ich vielleicht beim Setzen des Timeout einen Gedankenfehler?Code:d TimeOut DS d Sekunden 10i 0 inz(5) d usec 10i 0 inz(0) RetCode = setsockopt(sock :SOL_SOCKET :SO_RCVTIMEO :%addr(Timeout) : %size(Timeout) );
![[NEWSboard IBMi Forum]](images/duke/nblogo.gif)



Mit Zitat antworten
Bookmarks