b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

setsockopt socket_error_windows setsockopt_socket_error

电脑杂谈  发布时间:2017-05-14 04:00:49  来源:网络整理

windows setsockopt_setsockopt socket_error_socket_error

设置套接口的选项。

int PASCAL FAR setsockopt( SOCKET s, int level, int optname,const char FAR* optval, int optlen);

s:标识一个套接口的描述字。

level:选项定义的层次;目前仅支持SOL_SOCKET和IPPROTO_TCP层次。

optname:需设置的选项。

optval:指针,指向存放选项的缓冲区。

optlen:optval缓冲区的长度。

注释:

setsockopt()函数用于任意类型、任意状态套接口的设置选项。尽管在不同协议层上存在选项,但本函数仅定义了最高的“套接口”层次上的选项。选项影响套接口的操作,诸如加急数据是否在普通数据流中接收,广播数据是否可以从套接口发送等等。

有两种套接口的选项:一种是布尔型选项,允许或禁止一种特性;另一种是整形或结构选项。

允许一个布尔型选项,则将optval指向非零整形数;禁止一个选项optval指向一个等于零的整形数。对于布尔型选项,optlen应等于sizeof(int);

对其他选项,optval指向包含所需选项的整形数或结构,而optlen则为整形数或结构的长度。

SO_LINGER选项用于控制下述情况的行动:套接口上有排队的待发送数据,且closesocket()调用已执行。参见closesocket()函数中关于SO_LINGER选项对closesocket()语义的影响。

应用程序通过创建一个linger结构来设置相应的操作特性:

struct linger {

int l_onoff;

int l_linger;

};

为了允许SO_LINGER,应用程序应将l_onoff设为非零,将l_linger设为零或需要的超时(以秒为单位),然后调用setsockopt()。

为了允许SO_DONTLINGER(亦即禁止SO_LINGER),l_onoff应设为零,然后调用setsockopt()。

Here is a summary of closesocket behavior:

If the l_onoff member of the LINGER structure is zero (the default for a socket), closesocket returns immediately and the connection is gracefully closed in the background.

If the l_onoff member of the linger structure is set to nonzero and the l_linger member is set to zero (no timeout) closesocket returns immediately and the connection is reset or terminated.

If the l_onoff member of the linger structure is set to nonzero and the l_linger member is set to a nonzero timeout:

– For a blocking socket, closesocket blocks until all data is sent or the timeout expires.

– For a nonblocking socket, closesocket returns immediately indicating failure.


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-46989-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    每日福利
    热点图片
    拼命载入中...