請告訴我,我無法弄清楚 CURLMOPT_TIMERFUNCTION 引數的用途。
是的,我當然閱讀了關于 CURLMOPT_TIMERFUNCTION 的完整描述:
CURLMOPT_TIMERFUNCTION
定時器回呼
超頻
我仍然不明白他做什么以及為什么要他。例如:
某些功能(例如超時和重試)要求您即使在檔案描述符上沒有活動時也呼叫 libcurl。
您的回呼函式 timer_callback應該安裝一個非重復計時器,其過期時間為 timeout_ms 毫秒。當該計時器觸發時,根據您使用的介面呼叫curl_multi_socket_action或 curl_multi_perform。
我不明白為什么我應該從CURLMOPT_TIMERFUNCTION回呼而不是從事件回呼中呼叫curl_multi_socket_action()?
uj5u.com熱心網友回復:
這是為了讓 curl 在沒有及時回應請求時采取行動。您需要定期回撥 curl,以便它進行自己的內部管理。
想象一下,您向 curl 發出請求,并且 curl 對其執行了操作,但當時無法連接。curl 無法掛起等待連接的行程,因此它會將控制權回傳給您,并依賴您將控制權回傳給 curl 以檢查它是否可以定期連接。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/392912.html
