2012-08-09 4 views
0

현재 애플리케이션의 업로드 및 다운로드는 json webservice를 사용하여 수행됩니다. 예 : 업로드의 경우 json string을 webservice로 보내고 webservice가 해당 데이터를 SQL Server 데이터베이스에 업로드합니다.GCD 또는 스레딩 사용 방법

이러한 모든 작업은 이벤트를 발생시킬 때 수행됩니다.

1. json 문자열 변환시 SBJson을 사용했습니다. 2. 그리고 HTTP 요청에 대해 NSURLConnection을 사용했습니다.

내 요구 사항 :

현재 장치와 서버 사이의 모든 통신은 메인 쓰레드에 의해 수행된다. 내 요구 사항은 메인 스레드에 부하를 가져 오지 않습니다. 대신 백그라운드 스레드를 사용하여 발생합니다. 이 배경 스레드는 보내기 요청을 담당하고 응답을 수신해야합니다.

문제 :

나는 백그라운드 스레드를 사용하거나 배경 업로드가 진행중인 응용 프로그램의 UI에있을 때 차단하지 않을 수 있도록 GCD를 사용하여 데이터를 보낼 필요가

. 하지만 내 응용 프로그램에서 구현할 때 예상대로 작동하지 않습니다. 내 스레드가 종료되고 응답을 기다리지 않고 UI도 차단합니다. 내가 돌봐야 할 것들을 안내하도록 하소서.

답변

0

것은이 이전 게시물에게 탄 (아마도 더 높은 담당자 가진 사람뿐만 아니라 DUP으로 해결할 수) 보내기 (는 공식적으로 지원되지 않음에도 불구하고) 빠른 승리를 위해

iOS: how to perform a HTTP POST request?

을, 당신이 줄 수 있습니다 라이브러리 총에 : http://allseeing-i.com/ASIHTTPRequest/

+0

위의 대답은 나를 위해 작동하지 않습니다. HTTP 요청을 보내는 방법 만 보여줍니다. 현재 요청 대응을 할 수 있습니다. 나는 배경 스레드에서 그것을 할 필요가있다. –