QueueElement qe;
try {
loop:
while ((qe = dequeue()) != null) {
MailEvent e = qe.event;
Vector v = qe.vector;
for (int i = 0; i < v.size(); i++)
try {
e.dispatch(v.elementAt(i));
} catch (Throwable t) {
if (t instanceof InterruptedException)
break loop;
// ignore anything else thrown by the listener
}