INNER CODE UNIT · Java
createDispatcherThread
RuedigerMoeller/kontraktor · attic/ElasticScheduler.java:366
protected DispatcherThread createDispatcherThread() {
return new DispatcherThread(this);
}
final Object balanceLock = new Object();
/** called from inside overloaded thread.
* all actors assigned to the calling thread therefore can be safely moved
* @param dispatcherThread
*/
@Override
public void rebalance(DispatcherThread dispatcherThread) {
synchronized (balanceLock) {
DispatcherThread minLoadThread = assignDispatcher(dispatcherThread.getLoad());
if (minLoadThread == null || minLoadThread == dispatcherThread) {
return;
}
int qSizes = dispatcherThread.getAccumulatedQSizes();