Конечно, вы можете сделать это. Это так же просто, как получить EventLoop
из Channel
и затем использовать любой из предоставленных ScheduledExecutorService
методов, которые он реализует. При этом вам необходимо убедиться, что вы не выполняете никаких блокирующих вызовов в этих запланированных задачах, так как в противном случае вы заблокируете EventLoop
, и на EventLoop
не может произойти ввод-вывод до тех пор, пока задача не завершится (что повлияет на все Channel
s). которые используют это EventLoop
).
Например, вот как вы должны выполнить задачу в EventLoop:
EventLoop loop = channel.eventLoop();
loop.execute(() -> {
// Do something.
});