public void offer(Selector selector) { if (selector == null) { return; } final boolean wasReturned; if (poolSize.getAndIncrement() < maxPoolSize && (selector = checkSelector(selector)) != null) { selectors.offer(selector); wasReturned = true; } else { poolSize.decrementAndGet(); if (selector == null) { return; } wasReturned = false; } if (isClosed.get()) { if (selectors.remove(selector)) { closeSelector(selector); } } else if (!wasReturned) { closeSelector(selector); } }
protected void recycleTemporaryArtifacts(Selector selector, SelectionKey selectionKey) { if (selectionKey != null) { try { selectionKey.cancel(); } catch (Exception e) { LOGGER.log(Level.WARNING, LogMessages.WARNING_GRIZZLY_TEMPORARY_SELECTOR_IO_CANCEL_KEY_EXCEPTION(selectionKey), e); } } if (selector != null) { selectorPool.offer(selector); } } }
getSelectorPool().poll();
public synchronized void close() { if (!isClosed.getAndSet(true)) { Selector selector; while ((selector = selectors.poll()) != null) { closeSelector(selector); } } }
new TemporarySelectorPool(selectorProvider, selectorPoolSize));
getSelectorPool().poll();
public synchronized void close() { if (!isClosed.getAndSet(true)) { Selector selector; while ((selector = selectors.poll()) != null) { closeSelector(selector); } } }
new TemporarySelectorPool(selectorProvider, selectorPoolSize));
public void offer(Selector selector) { if (selector == null) { return; } final boolean wasReturned; if (poolSize.getAndIncrement() < maxPoolSize && (selector = checkSelector(selector)) != null) { selectors.offer(selector); wasReturned = true; } else { poolSize.decrementAndGet(); if (selector == null) { return; } wasReturned = false; } if (isClosed.get()) { if (selectors.remove(selector)) { closeSelector(selector); } } else if (!wasReturned) { closeSelector(selector); } }
getSelectorPool().poll();
public synchronized void close() { if (!isClosed.getAndSet(true)) { Selector selector; while ((selector = selectors.poll()) != null) { closeSelector(selector); } } }
protected void recycleTemporaryArtifacts(Selector selector, SelectionKey selectionKey) { if (selectionKey != null) { try { selectionKey.cancel(); } catch (Exception e) { LOGGER.log(Level.WARNING, LogMessages.WARNING_GRIZZLY_TEMPORARY_SELECTOR_IO_CANCEL_KEY_EXCEPTION(selectionKey), e); } } if (selector != null) { selectorPool.offer(selector); } } }
new TemporarySelectorPool(selectorProvider, selectorPoolSize));
public void offer(Selector selector) { if (selector == null) { return; } final boolean wasReturned; if (poolSize.getAndIncrement() < maxPoolSize && (selector = checkSelector(selector)) != null) { selectors.offer(selector); wasReturned = true; } else { poolSize.decrementAndGet(); if (selector == null) { return; } wasReturned = false; } if (isClosed.get()) { if (selectors.remove(selector)) { closeSelector(selector); } } else if (!wasReturned) { closeSelector(selector); } }
getSelectorPool().poll();
public synchronized void close() { if (!isClosed.getAndSet(true)) { Selector selector; while ((selector = selectors.poll()) != null) { closeSelector(selector); } } }
protected void recycleTemporaryArtifacts(Selector selector, SelectionKey selectionKey) { if (selectionKey != null) { try { selectionKey.cancel(); } catch (Exception e) { LOGGER.log(Level.WARNING, LogMessages.WARNING_GRIZZLY_TEMPORARY_SELECTOR_IO_CANCEL_KEY_EXCEPTION(selectionKey), e); } } if (selector != null) { selectorPool.offer(selector); } } }
new TemporarySelectorPool(selectorProvider, selectorPoolSize));
public void offer(Selector selector) { if (selector == null) { return; } final boolean wasReturned; if (poolSize.getAndIncrement() < maxPoolSize && (selector = checkSelector(selector)) != null) { selectors.offer(selector); wasReturned = true; } else { poolSize.decrementAndGet(); if (selector == null) { return; } wasReturned = false; } if (isClosed.get()) { if (selectors.remove(selector)) { closeSelector(selector); } } else if (!wasReturned) { closeSelector(selector); } }
getSelectorPool().poll();