Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Selector.select() не блокирует поток. В чем проблема / 2 сообщений из 2, страница 1 из 1
02.12.2018, 18:09
    #39741730
Lemkoleg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Selector.select() не блокирует поток. В чем проблема
Доброе время суток. Почему может не блокироваться поток NIO сервера операцией select()? Стоит только одному сокету подключится ( без отправки данных), как операция Selector.select() возвращает канал этого сокета isReadable(), не блокируя поток. В результате, идет бесконечный цикл, с попыткой прочитать данные. Но данных - 0.
...
Рейтинг: 0 / 0
03.12.2018, 14:33
    #39741975
Basil A. Sidorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Selector.select() не блокирует поток. В чем проблема
дока
Код: java
1.
2.
3.
public abstract
int select()
throws IOException

Selects a set of keys whose corresponding channels are ready for I/O operationsКогда клиент подключился к сокету, сокет готов к операциям ввода-вывода? Готов.
Так кто ж вам доктор, если вы не ограничили диапазон интересующих вас операций при регистрации канала в селекторе?
Код: java
1.
2.
3.
public final
SelectionKey register(Selector sel, int ops)
throws ClosedChannelException
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Selector.select() не блокирует поток. В чем проблема / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]