я NIO не сильно глубоко знаю, но что-то в кторе было про селекторы) Мне даже не принципиально то, что они неблокирующие, достаточно сделать interruptible. Сделал, вроде работает) возможно попробую потом подставить ктор-реализацию и запустить на 5 андроиде, чисто любопытства ради.
Лучше проверить. Возможно, там всё-таки есть все необходимые классы (т.к. SelectableChannel уже давно доступен), а реализация из ktor наверняка будет надёжнее, чем состряпанная на коленке.