New dispatcher using multithreading