threading model reimplemented to put more load onto the workers