Имею:
string CScanThread::HTTPReqest( string url )
{
CURL *curl;
CURLcode result;
curl = curl_easy_init( );
if ( curl )
{
curl_easy_setopt( curl, CURLOPT_ERRORBUFFER, m_CURLErrorBuffer );
curl_easy_setopt( curl, CURLOPT_URL, url );
curl_easy_setopt( curl, CURLOPT_HEADER, 0 );
curl_easy_setopt( curl, CURLOPT_CAINFO, "cacert.pem" );
curl_easy_setopt( curl, CURLOPT_WRITEFUNCTION, writer );
curl_easy_setopt( curl, CURLOPT_WRITEDATA, &m_ResponseBuffer );
result = curl_easy_perform( curl );
curl_easy_cleanup( curl );
if ( result == CURLE_OK )
return m_ResponseBuffer;
}
return string ();
}
Редко но программа вылетает тут:
result = curl_easy_perform( curl );
curl_easy_cleanup( curl );
Класс выполняется в потоке.