2011-05-04 4 views
0

저는 Java/Android 개발에 익숙하지 않아 현재 소켓을 통해 네트워크 IO를 해결하려고합니다.비동기 소켓 읽기

서버에 대한 소켓 연결을 열고 서버에서 클라이언트에 요청하지 않은 데이터를 게시 할 수 있도록 최선의 방법으로 기능을 구현하려고합니다. AsyncTask를 사용하여 별도의 스레드에서 비교적 쉽게 명령 응답 모델을 구현할 수 있습니다.

안드로이드의 오픈 소켓에서 비동기 읽기를 수행하는 방법이 있나요? (.Net에서는 이것을 달성하기 위해 Socket.BeginReceive를 사용했습니다). 또는 실패, 거기에 차단 소켓 읽기 작업 스레드에서 넣을 수 있습니다 동안 주 스레드가 동일한 소켓에 쓰기를 허용하는 동안 읽기 차단됩니다?

큰 호응을 얻었습니다.

답변

1

Socket .getInputStream(). read()는 AsyncTask에서 사용할 수 있습니다. 그것은 차단합니다.

주 스레드에 Socket.getOutpuStream(). write()를 넣을 수 있으며 다른 스레드에서 읽기가 차단되면 정상적으로 작동합니다.

+0

감사합니다. 도움이됩니다. – Brad