CURLE_OPERATION_TIMEDOUT libcurl 錯誤碼28– 操作超時


在多線程情況下出現錯誤碼28 是因為沒有調用全局初始化函數

 

static int GlobleInit();//全局初始化,主程序調用一次,只能一次
 static void GlobleFint();

int CHttpClient::GlobleInit()//全局初始化,主程序調用一次
{
 return curl_global_init(CURL_GLOBAL_ALL);
}
void CHttpClient::GlobleFint()
{
 curl_global_cleanup();
}

 

在調應libcurl庫中其他函數之前,必須先調用這個函數對編程環境進行相應的初始化,使每個程序調用libcurl庫函數都具有相同的效果。這個按位組合選擇的整形(int)變量可以精確告訴libcurl當下的需要的工作模式。詳細情況,如果你不是十分熟悉整體參數的初始化,您可以設置參數為CURL_GLOABL_ALL。對所有的需要用到的環境進行初始化,這個函數不是安全線程,在多線程應用中,需要在主線程中調用這個函數。這個函數設置libcurl所需的環境。通常情況,如果不顯式的調用它,第一次調用 curl_easy_init()時,curl_easy_init 會調用 curl_global_init,在單線程環境下,這不是問題。但是多線程下就不行了,因為curl_global_init不是線程安全的。在多個線 程中調用curl_easy_int,然后如果兩個線程同時發現curl_global_init還沒有被調用,同時調用 curl_global_init,悲劇就發生了。這種情況發生的概率很小,但可能性是存在的。

 

 

 

自己編了一個股票監控軟件,有如下功能,有興趣的朋友可以下載;

(1)   個股監測。監測個股實時變化,可以監測個股大單交易、急速拉升和下降、主力入場和出場、股票最高點和最低點提醒。檢測到最高點、最低點、主力進場點、主力退場點、急速拉升點、急速下跌點,給出語音或者聲音提醒,不用再時刻看着大盤了,給你更多自由的時間;

(2)   大盤監測。監測大盤的走勢,采用上證、深證、創業三大指數的綜合指數作為大盤走勢。並實時監測大盤的最高點和最低點、中間的轉折點。

(3)   股票推薦。還能根據歷史數據長期或短期走勢進行分析,對股市3千多個股票進行分析對比,選出漲勢良好的股票,按照增長速度從大到小排序,推薦給你漲勢良好的股票;

下載地址:

1.0.3版本(修復大盤指數崩潰缺陷)下載地址:

鏈接:https://pan.baidu.com/s/1BJcTp-kdniM7VE9K5Kd3vg 提取碼:003h

更新鏈接:

https://www.cnblogs.com/bclshuai/p/10621613.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM