在Python中,你使用socket.setblocking(0)使它无阻塞.在C中,它更复杂,(一方面,你需要在BSD风格O_NONBLOCK和几乎不可区分的Posix风味O_NDELAY之间进行选择,这完全不同于TCP_NODELAY),但它是完全相同的想法.你在创建套接字之后,但在使用之前这样做. (实际上,如果你坚果,你可以来回切换.) 主要的机械差异是send,recv,connect和accept可以返回而没有做任何事情.你有(当然)一些选择.你可以检查返回码和错误代码,一般驱使自己