Skip to content
SocketSetNonBlocking

SocketSetNonBlocking

Description

Toggle non-blocking mode on a socket fd.

Success

Returns true. The fd is in the requested mode.

Failure

Returns false. The fd is unchanged; the failing syscall is logged.

Usage example (Cross-references)

Usage examples (Cross-references)
    // ---------------------------------------------------------------------------
    
    bool SocketSetNonBlocking(SockFd fd, bool nonblock) {
        return plat_set_nonblocking(fd, nonblock);
    }
        }
    
        bool set_ok = SocketSetNonBlocking(listener.fd, true);
    
        ListenerClose(&listener);
        ok      = ok && SocketSetKeepAlive(client.fd, true);
        ok      = ok && SocketSetReuseAddr(client.fd, true);
        ok      = ok && SocketSetNonBlocking(client.fd, true);
        ok      = ok && SocketSetNonBlocking(client.fd, false);
        ok      = ok && SocketSetReuseAddr(client.fd, true);
        ok      = ok && SocketSetNonBlocking(client.fd, true);
        ok      = ok && SocketSetNonBlocking(client.fd, false);
    
        // Connection still usable after toggling options.
Last updated on