/** * Loop, executing targets as they are received.<p> */ @Override public void run() { boolean runOnce = (m_runnable != null); while (m_run) { setPriority(m_pool.getThreadPriority()); try { if (m_runnable == null) { m_runnable = m_pool.getNextRunnable(); } if (m_runnable != null) { m_runnable.run(); } } catch (InterruptedException e) { LOG.error(Messages.get().getBundle().key(Messages.LOG_THREAD_INTERRUPTED_1, getName()), e); } catch (Throwable t) { LOG.error(Messages.get().getBundle().key(Messages.LOG_THREAD_ERROR_1, getName()), t); } finally { if (runOnce) { m_run = false; } m_runnable = null; } } if (LOG.isDebugEnabled()) { LOG.debug(Messages.get().getBundle().key(Messages.LOG_THREAD_SHUTDOWN_1, getName())); } }
/** * Loop, executing targets as they are received.<p> */ @Override public void run() { boolean runOnce = (m_runnable != null); while (m_run) { setPriority(m_pool.getThreadPriority()); try { if (m_runnable == null) { m_runnable = m_pool.getNextRunnable(); } if (m_runnable != null) { m_runnable.run(); } } catch (InterruptedException e) { LOG.error(Messages.get().getBundle().key(Messages.LOG_THREAD_INTERRUPTED_1, getName()), e); } catch (Throwable t) { LOG.error(Messages.get().getBundle().key(Messages.LOG_THREAD_ERROR_1, getName()), t); } finally { if (runOnce) { m_run = false; } m_runnable = null; } } if (LOG.isDebugEnabled()) { LOG.debug(Messages.get().getBundle().key(Messages.LOG_THREAD_SHUTDOWN_1, getName())); } }