netty 是异步通过事件机制来发送和接收信息的。但如果是请求-响应的模块就需要将netty修改为同步调用的方式。
具体思路是:
1、在往通道里写数据时,在通道里通过setAttachment的方式往里面添加锁(CountDownLatch)
此时线程会被阻塞
2、在处理器(handle)里接收到返回数据后,通过通道的getAttachment获取到前面加的锁
解锁,并将结果返回,这样外面的线程就可以拿到数据啦。
netty 是异步通过事件机制来发送和接收信息的。但如果是请求-响应的模块就需要将netty修改为同步调用的方式。
具体思路是:
1、在往通道里写数据时,在通道里通过setAttachment的方式往里面添加锁(CountDownLatch)
此时线程会被阻塞
2、在处理器(handle)里接收到返回数据后,通过通道的getAttachment获取到前面加的锁
解锁,并将结果返回,这样外面的线程就可以拿到数据啦。