为socket的recv/send设置超时

简介: 为socket的recv/send设置超时

 发现每次发送文件之后,要等很久插入到数据库中。哪里有问题?今天跟踪了一下,发现是发送文件之后的返回很慢。一想,应该是使用的默认超时(30秒?)。设置超时后,很快就返回了:

    struct timeval timeout={1,0};
    setsockopt(socket, SOL_SOCKET, SO_SNDTIMEO, (const char*)&timeout, sizeof(timeout));
    setsockopt(socket, SOL_SOCKET, SO_RCVTIMEO, (const char*)&timeout, sizeof(timeout));
目录
相关文章
|
消息中间件 C语言
zframe_send发送的内容,可以使用zmq_recv接收吗
如果你在同一套接字上混合使用CZMQ的zframe_send和ZMQ的zmq_recv,可能会遇到问题,因为这两个函数可能对ZMQ的内部状态有不同的预期。
87 0
|
5月前
|
JavaScript
ERR_SOCKET_TIMEOUT Socket timeout
ERR_SOCKET_TIMEOUT Socket timeout
|
消息中间件 网络协议 Java
深入剖析阻塞式socket的timeout
深入剖析阻塞式socket的timeout
|
消息中间件 C语言
一个使用zmq_recv 接收 5555端口的demo
这个程序会一直运行,接收来自5555端口的消息,并打印出来。每接收到一个消息,它会等待1秒,然后发送一个"World"的回复。
81 0
|
数据库
为socket的recv/send设置超时
为socket的recv/send设置超时
261 0
|
算法 网络协议 Unix
setsocketopt设置socket应用
setsocketopt设置socket应用
208 0
stream_socket_accept设置非阻塞,socket_accept设置非阻塞
stream_socket_accept设置非阻塞,socket_accept设置非阻塞
210 0
|
监控 网络协议 Unix
Socket的基本操作函数socket()、bind()、listen()、connect()、accept()、recv()、send()、select()、close()
Socket的基本操作函数socket()、bind()、listen()、connect()、accept()、recv()、send()、select()、close()
1396 0
Socket的基本操作函数socket()、bind()、listen()、connect()、accept()、recv()、send()、select()、close()
|
网络协议
TCP连接和 time_wait、close_waite
TCP连接和 time_wait、close_waite tags:time_wait close_waite RST TCP 引言:前两天朋友公司的服务器垮掉了,最后查出的原因是发现大量的time_wait网络状态。
1581 0