/** * @inheritedDoc */ @Override public void operationComplete(WriteFuture future) { queueHandler.polled(WriteRequestFilter.this, e); } });
/** * @inheritedDoc */ @Override public void operationComplete(WriteFuture future) { queueHandler.polled(WriteRequestFilter.this, e); } });
public void operationComplete(WriteFuture future) { queueHandler.polled(WriteRequestFilter.this, e); } });
private void runTasks(SessionTasksQueue sessionTasksQueue) { for (;;) { Runnable task; Queue<Runnable> tasksQueue = sessionTasksQueue.tasksQueue; synchronized (tasksQueue) { task = tasksQueue.poll(); if (task == null) { sessionTasksQueue.processingCompleted = true; break; } } eventQueueHandler.polled(OrderedThreadPoolExecutor.this, (IoEvent) task); runTask(task); } }
private void runTasks(SessionTasksQueue sessionTasksQueue) { for (;;) { Runnable task; Queue<Runnable> tasksQueue = sessionTasksQueue.tasksQueue; synchronized (tasksQueue) { task = tasksQueue.poll(); if (task == null) { sessionTasksQueue.processingCompleted = true; break; } } eventQueueHandler.polled(OrderedThreadPoolExecutor.this, (IoEvent) task); runTask(task); } }
private void runTasks(SessionTasksQueue sessionTasksQueue) { for (;;) { Runnable task; Queue<Runnable> tasksQueue = sessionTasksQueue.tasksQueue; synchronized (tasksQueue) { task = tasksQueue.poll(); if (task == null) { sessionTasksQueue.processingCompleted = true; break; } } eventQueueHandler.polled(OrderedThreadPoolExecutor.this, (IoEvent) task); runTask(task); } }
@Override public boolean remove(Runnable task) { boolean removed = super.remove(task); if (removed) { getQueueHandler().polled(this, (IoEvent) task); } return removed; }
@Override public boolean remove(Runnable task) { boolean removed = super.remove(task); if (removed) { getQueueHandler().polled(this, (IoEvent) task); } return removed; }
@Override public List<Runnable> shutdownNow() { shutdown(); List<Runnable> answer = new ArrayList<>(); Runnable task; while ((task = getQueue().poll()) != null) { if (task == EXIT_SIGNAL) { getQueue().offer(EXIT_SIGNAL); Thread.yield(); // Let others take the signal. continue; } getQueueHandler().polled(this, (IoEvent) task); answer.add(task); } return answer; }
@Override public boolean remove(Runnable task) { boolean removed = super.remove(task); if (removed) { getQueueHandler().polled(this, (IoEvent) task); } return removed; }
@Override public List<Runnable> shutdownNow() { shutdown(); List<Runnable> answer = new ArrayList<>(); Runnable task; while ((task = getQueue().poll()) != null) { if (task == EXIT_SIGNAL) { getQueue().offer(EXIT_SIGNAL); Thread.yield(); // Let others take the signal. continue; } getQueueHandler().polled(this, (IoEvent) task); answer.add(task); } return answer; }
/** * {@inheritDoc} */ @Override public List<Runnable> shutdownNow() { shutdown(); List<Runnable> answer = new ArrayList<>(); IoSession session; while ((session = waitingSessions.poll()) != null) { if (session == EXIT_SIGNAL) { waitingSessions.offer(EXIT_SIGNAL); Thread.yield(); // Let others take the signal. continue; } SessionTasksQueue sessionTasksQueue = (SessionTasksQueue) session.getAttribute(TASKS_QUEUE); synchronized (sessionTasksQueue.tasksQueue) { for (Runnable task : sessionTasksQueue.tasksQueue) { getQueueHandler().polled(this, (IoEvent) task); answer.add(task); } sessionTasksQueue.tasksQueue.clear(); } } return answer; }
@Override public List<Runnable> shutdownNow() { shutdown(); List<Runnable> answer = new ArrayList<>(); Runnable task; while ((task = getQueue().poll()) != null) { if (task == EXIT_SIGNAL) { getQueue().offer(EXIT_SIGNAL); Thread.yield(); // Let others take the signal. continue; } getQueueHandler().polled(this, (IoEvent) task); answer.add(task); } return answer; }
queueHandler.polled(UnorderedThreadPoolExecutor.this, (IoEvent) task); runTask(task);
queueHandler.polled(UnorderedThreadPoolExecutor.this, (IoEvent) task); runTask(task);
/** * {@inheritDoc} */ @Override public List<Runnable> shutdownNow() { shutdown(); List<Runnable> answer = new ArrayList<>(); IoSession session; while ((session = waitingSessions.poll()) != null) { if (session == EXIT_SIGNAL) { waitingSessions.offer(EXIT_SIGNAL); Thread.yield(); // Let others take the signal. continue; } SessionTasksQueue sessionTasksQueue = (SessionTasksQueue) session.getAttribute(TASKS_QUEUE); synchronized (sessionTasksQueue.tasksQueue) { for (Runnable task : sessionTasksQueue.tasksQueue) { getQueueHandler().polled(this, (IoEvent) task); answer.add(task); } sessionTasksQueue.tasksQueue.clear(); } } return answer; }
/** * {@inheritDoc} */ @Override public List<Runnable> shutdownNow() { shutdown(); List<Runnable> answer = new ArrayList<>(); IoSession session; while ((session = waitingSessions.poll()) != null) { if (session == EXIT_SIGNAL) { waitingSessions.offer(EXIT_SIGNAL); Thread.yield(); // Let others take the signal. continue; } SessionTasksQueue sessionTasksQueue = (SessionTasksQueue) session.getAttribute(TASKS_QUEUE); synchronized (sessionTasksQueue.tasksQueue) { for (Runnable task: sessionTasksQueue.tasksQueue) { getQueueHandler().polled(this, (IoEvent) task); answer.add(task); } sessionTasksQueue.tasksQueue.clear(); } } return answer; }
/** * {@inheritDoc} */ @Override public boolean remove(Runnable task) { checkTaskType(task); IoEvent event = (IoEvent) task; IoSession session = event.getSession(); SessionTasksQueue sessionTasksQueue = (SessionTasksQueue) session.getAttribute(TASKS_QUEUE); if (sessionTasksQueue == null) { return false; } boolean removed; Queue<Runnable> tasksQueue = sessionTasksQueue.tasksQueue; synchronized (tasksQueue) { removed = tasksQueue.remove(task); } if (removed) { getQueueHandler().polled(this, event); } return removed; }
/** * {@inheritDoc} */ @Override public boolean remove(Runnable task) { checkTaskType(task); IoEvent event = (IoEvent) task; IoSession session = event.getSession(); SessionTasksQueue sessionTasksQueue = (SessionTasksQueue)session.getAttribute( TASKS_QUEUE ); Queue<Runnable> tasksQueue = sessionTasksQueue.tasksQueue; if (sessionTasksQueue == null) { return false; } boolean removed; synchronized (tasksQueue) { removed = tasksQueue.remove(task); } if (removed) { getQueueHandler().polled(this, event); } return removed; }
/** * {@inheritDoc} */ @Override public boolean remove(Runnable task) { checkTaskType(task); IoEvent event = (IoEvent) task; IoSession session = event.getSession(); SessionTasksQueue sessionTasksQueue = (SessionTasksQueue) session.getAttribute(TASKS_QUEUE); if (sessionTasksQueue == null) { return false; } boolean removed; Queue<Runnable> tasksQueue = sessionTasksQueue.tasksQueue; synchronized (tasksQueue) { removed = tasksQueue.remove(task); } if (removed) { getQueueHandler().polled(this, event); } return removed; }