The following slides were taken from the presentation Building a Robust Multithreaded Server in Java
synchronized(clients) { synchronized(problems) {
clients.remove(c); problems.add(c);
}}
1. Pop message off incoming queue
2. Deliver it
3. Loop
1. Constant, tuned per application
2. Dynamic a/k/a thread pooling