我正在实现一个http服务器,该服务器使用vertx版本3.5.4将工作分散到http客户端。
服务器接收工作并将其异步发送给一群客户端。但是,我需要阻塞请求线程,直到所有结果都到达为止。
在纯Java世界中,我会做类似的事情:
CountdownLatch latch = new CountdownLatch( 3 );
executor.submit( new Request(client1) );
executor.submit( new Request(client2) );
executor.submit( new Request(client3) );
latch.await(); // block the request thread
//In callback thread from clients
latch.countdown();
但是,在vertx中,我无法阻止主事件循环线程。 建议的阻止初始请求线程的方法是什么?
谢谢