我写了一个类似 libcur 的 sendrecv 示例的应用程序(示例 url 是:http ://curl.haxx.se/libcurl/c/sendrecv.html )。不同之处在于我的应用程序在循环线程中永远重复发送/接收。添加设置其他参数:
code =curl_easy_setopt(m_curl, CURLOPT_NOSIGNAL, 1L);
code =curl_easy_setopt(m_curl, CURLOPT_CONNECTTIMEOUT, 1L);
code =curl_easy_setopt(m_curl, CURLOPT_TCP_NODELAY, 1L);
//code =curl_easy_setopt(m_curl, CURLOPT_TIMEOUT_MS, 200);//200 milli secs
code =curl_easy_setopt(m_curl, CURLOPT_TIMEOUT, 1L);
但是当网络丢失时,例如从网卡接口拔出电缆。curl_easy_send 总是返回 CURLE_OK 。这似乎 CURLOPT_TIMEOUT 没有效果。有没有使用错误或其他问题?如果我想立即知道网络丢失该怎么办。