我使用libcurl在iOS中执行网络请求,使用选项CURLOPT_TIMEOUT
将超时设置为60秒。在请求期间(curl_easy_perform (curl)
)断开网络时,此呼叫将在60秒后达到超时后才会返回。
我检查了curl文档中的回调,但没有找到合适的回调。
在请求期间,我是否可以注册以检测网络断开连接?所以我可以直接中断请求。
答案 0 :(得分:2)
如果libcurl知道连接断开,那么它将返回传输失败。当libcurl不知道连接被破坏时,它无法对它做任何事情,它必须等待超时。
curl FAQ条目Why doesn't curl return an error when the network cable is unplugged?
中也对此进行了进一步说明