mir ist bekannt das libcurl Multi-Threading unterstützt, würde dieses daher auch gerne für mein Programm nutzen.
Dazu jedoch folgendes Problem. Das Ergebnis (der Inhalt der Seite) wird bei libcurl an eine Prozedure übergeben .. und wenn ich da mit Multi-Threading arbeiten würde, würde es so einige Schwierigkeiten mit den Variablen geben.
Und wenn ich mit Mutex arbeite wird im Endeffekt auch wieder nur in Reihe gearbeitet ..
Code: Alles auswählen
ProcedureC RW_LibCurl_WriteFunction(*ptr, Size, NMemB, *Stream)
;retreives utf-8/ascii encoded data
Protected SizeProper.l = Size & 255
Protected NMemBProper.l = NMemB
Protected MyDataS.s
Shared ReceivedData.s
MyDataS = PeekS(*ptr, SizeProper * NMemBProper)
ReceivedData + MyDataS
ProcedureReturn SizeProper * NMemBProper
EndProcedure
Procedure.s RW_LibCurl_GetData()
Shared ReceivedData.s
ProcedureReturn ReceivedData
EndProcedureCode: Alles auswählen
; Include .. etc ..
curl = curl_easy_init()
If curl
curl_easy_setopt(curl, #CURLOPT_URL, @"http://www.google.de/")
curl_easy_setopt(curl, #CURLOPT_SSL_VERIFYPEER, 0)
curl_easy_setopt(curl, #CURLOPT_SSL_VERIFYHOST, 0)
curl_easy_setopt(curl, #CURLOPT_HEADER, 0)
curl_easy_setopt(curl, #CURLOPT_WRITEFUNCTION, @RW_LibCurl_WriteFunction())
res = curl_easy_perform(curl)
Debug RW_LibCurl_GetData()
curl_easy_cleanup(curl)
EndIfOder kennt sich jemand mit libcurl besser aus als ich (würde mich nicht wundern
MFG;
Duellking
