introduced BlockingWaitStrategy to lower CPU consumption. Introduced startup barrier to ensure all worker threads are properly initialized before listener thread