Неблокирующая запись в сокет в Android - PullRequest
1 голос
/ 21 июля 2011

У меня есть приложение для Android с открытым сокетом.Я хотел бы написать в этот сокет без какой-либо возможности блокировать поток при записи в течение заметного промежутка времени.Если произойдет какая-либо ошибка ввода-вывода, я бы хотел, чтобы запись просто молча прервалась.Есть ли простой способ сделать это?

Ответы [ 2 ]

3 голосов
/ 21 июля 2011

Да, NIO предоставляет класс SocketChannel (вызовите метод getChannel на вашем Socket), который позволяет вам вызывать configureBlocking для использования неблокирующего режима. Затем вы должны выполнить все свои операции ввода-вывода через канал, а не через объект Socket.

2 голосов
/ 21 июля 2011

Возможно, вы захотите взглянуть на NIO:

http://developer.android.com/reference/java/nio/channels/package-summary.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...