@Override public void run() { ComponentExecutorFactory execFactory = m_componentExecutorFactory; if (execFactory == null) { m_pending.put(c, c); } else { createComponentExecutor(execFactory, c); ((ComponentContext) c).start(); } } });
@Override public void run() { for (Component c : m_pending.keySet()) { createComponentExecutor(m_componentExecutorFactory, c); ((ComponentContext) c).start(); } m_pending.clear(); } });
public void add(final Component c) { if (mayStartNow(c)) { ((ComponentContext) c).start(); } else { // The component requires a threadpool: delay execution until one is available. m_serial.execute(new Runnable() { @Override public void run() { ComponentExecutorFactory execFactory = m_componentExecutorFactory; if (execFactory == null) { m_pending.put(c, c); } else { createComponentExecutor(execFactory, c); ((ComponentContext) c).start(); } } }); } }