@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void deregisterChannelAsync( final SelectorRunner selectorRunner, final SelectableChannel channel, final CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { deregisterChannel0(selectorRunner, channel, completionHandler); } else { addPendingTask(selectorRunner, new DeregisterChannelOperation( channel, completionHandler)); } }
@Override public void registerChannelAsync( SelectorRunner selectorRunner, SelectableChannel channel, int interest, Object attachment, CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { registerChannel0(selectorRunner, channel, interest, attachment, completionHandler); } else { addPendingTask(selectorRunner, new RegisterChannelOperation( channel, interest, attachment, completionHandler)); } }
@Override public void registerChannelAsync( SelectorRunner selectorRunner, SelectableChannel channel, int interest, Object attachment, CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { registerChannel0(selectorRunner, channel, interest, attachment, completionHandler); } else { addPendingTask(selectorRunner, new RegisterChannelOperation( channel, interest, attachment, completionHandler)); } }
@Override public void enque( final SelectorRunner selectorRunner, final Task task, final CompletionHandler<Task> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { // If this is Selector thread - put the task to postponed queue // it's faster than using pending task queue, which is thread-safe final Queue<SelectorHandlerTask> postponedTasks = selectorRunner.getPostponedTasks(); postponedTasks.offer(new RunnableTask(task, completionHandler)); } else { addPendingTask(selectorRunner, new RunnableTask(task, completionHandler)); } }
@Override public void registerChannelAsync( SelectorRunner selectorRunner, SelectableChannel channel, int interest, Object attachment, CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { registerChannel0(selectorRunner, channel, interest, attachment, completionHandler); } else { addPendingTask(selectorRunner, new RegisterChannelOperation( channel, interest, attachment, completionHandler)); } }
@Override public void registerChannelAsync( SelectorRunner selectorRunner, SelectableChannel channel, int interest, Object attachment, CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { registerChannel0(selectorRunner, channel, interest, attachment, completionHandler); } else { addPendingTask(selectorRunner, new RegisterChannelOperation( channel, interest, attachment, completionHandler)); } }
@Override public void registerChannelAsync( SelectorRunner selectorRunner, SelectableChannel channel, int interest, Object attachment, CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { registerChannel0(selectorRunner, channel, interest, attachment, completionHandler); } else { addPendingTask(selectorRunner, new RegisterChannelOperation( channel, interest, attachment, completionHandler)); } }
@Override public void registerChannelAsync( SelectorRunner selectorRunner, SelectableChannel channel, int interest, Object attachment, CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { registerChannel0(selectorRunner, channel, interest, attachment, completionHandler); } else { addPendingTask(selectorRunner, new RegisterChannelOperation( channel, interest, attachment, completionHandler)); } }
@Override public void registerChannelAsync( SelectorRunner selectorRunner, SelectableChannel channel, int interest, Object attachment, CompletionHandler<RegisterChannelResult> completionHandler) { if (isSelectorRunnerThread(selectorRunner)) { registerChannel0(selectorRunner, channel, interest, attachment, completionHandler); } else { addPendingTask(selectorRunner, new RegisterChannelOperation( channel, interest, attachment, completionHandler)); } }