2012-12-24 2 views
4

비동기 HTTP 요청을 보내려면 C++ 라이브러리를 찾고 있는데, 주 ​​스레드는 차단되지 않고 나중에 http url 요청이 완료되면 알림을받습니다.비동기 HTTP 클라이언트 용 C++ 라이브러리

이러한 비동기 HTTP 클라이언트 기능을 구현할 수있는 C++ 라이브러리가 있는지 알려주십시오.

+0

시도의 ASIO 부스트 ::하지만, – kassak

+0

비동기 TCP/UDP 나는 특히 HTTP이 필요합니다. – user1908860

+0

비동기 HTTP 클라이언트 기능이있는 라이브러리를 알려주십시오. – user1908860

답변

0

라이브러리가 비동기 일 필요는 없습니다. 스레드로부터 안전하다면 별도의 스레드에서 수행해야 할 작업을 수행하고 스레드 기본 요소를 사용하여 나중에 기본 스레드와 동기화 할 수 있어야합니다.

+0

이것은 어떤 경우에는 사실 일 수 있지만, 접근법으로는 확장되지 않을 것이다. –

1

libcurl의 "다중"인터페이스는 HTTP 요청을 실행할 수 있습니다 (두 번째 스레드를 사용하지만 효과는 동일합니다.) 먼저 curl_multi_init으로 멀티 핸들을 만듭니다. 그런 다음 쉬운 핸들을 설정하고 (curl_easy_init으로 만들고 URL 및 기타 옵션을 curl_easy_setopt으로 설정) curl_multi_add_handle으로 전화하십시오. curl_multi_perform은 전송을 시작하고 즉시 반환되며 curl_multi_info_read으로 전화하여 쉬운 핸들 상태를 알 수 있습니다. 완료되면 curl_multi_cleanup 번으로 전화하는 것을 잊지 마십시오. 내가 어떤 HTTP 실현이없는 기억으로

http://curl.haxx.se/libcurl/c/libcurl-multi.html

관련 문제