2013-04-17 1 views
1

저는 POCO/NET을 사용하여 C++ 프로젝트를 진행하고 있습니다.POCO HttpClient에 다중 스레드가 있습니까?

URI uri("http://my.url.se"); 
HTTPClientSession session(uri.getHost(), uri.getPort()); 

// prepare path 
string path(uri.getPathAndQuery()); 
if (path. empty()) path = "/"; 

// send request 
HTTPRequest req(HTTPRequest::HTTP_GET, path, HTTPMessage::HTTP_1_1); 
req.set("Accept", "AcceptString"); 
req.set("Consumer", "ALL"); 
req.set("Contract", "ALL"); 
session.sendRequest(req); 

// recieve response 

HTTPResponse res; 
istream &is = session.receiveResponse(res); 
응용 프로그램은 모두 안드로이드 2.3.6 (삼성 갤럭시 지오)에 노력하고 있습니다

최신 안드로이드 버전을하지만, 다음 포스트 (및 developer.android)에 따라 : 네트워크 코드는 아래에서 볼 수 있습니다

네트워킹 부분은 별도의 스레드에서 일하지 않는다면

https://stackoverflow.com/questions/15606791/android-httppost-freezes-and-crashes-app

NetworkOnMainThreadException 는 최신 안드로이드 버전 (허니 콤 이상)에 던져 질 것이다. 나는 새 스레드를 만들지 않았기 때문에 내 질문은 :

이미 구현되었다는 가정을 누구도 확인할 수 있습니까/자동으로 Poco Net 라이브러리의 새 스레드를 사용합니까?

도움을 청하기 위해!

답변

2

이미 구현 된 것으로 가정하고/자동으로 Poco Net 라이브러리에 새 스레드를 사용합니까?

HTTPClientSession은 별도의 스레드에서 실행되지 않으므로이를 명시 적으로 수행해야합니다. Poco :: Thread, Task 또는 Activity을 사용할 수 있습니다.