为了账号安全,请及时绑定邮箱和手机立即绑定

Java异步转同步的实现方法

Java异步转同步的实现方法

牛魔王的故事 2019-04-19 16:12:26
用Java调用一个异步方法时,方法会马上返回,而结果会在之后再去取例如:javapublicvoidinvoke(Runnabletask){threadPool.execute(task);}//或者publicFuturesubmit(Callabletask){returnthreadPool.submit(task);}以上方法都是异步的,对于需要得到返回结果的,可以通过future.get()来取得结果。我的问题是:如果一个方法一开始是异步的,我想把它转成同步来用,应该做哪些修改,或者是添加哪些类和逻辑?Java中的异步转同步有没有哪些一般的编程模式?据说用CountDownLatch也可以实现异步转同步,但我还不太理解。等待各位解答,先谢谢!
查看完整描述

2 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

异步转同步一般思路就是轮询,等待线程一直查询一个bool变量值,执行线程在任务结束时候设置为bool为true,这样等待线程接着就可以向下执行了
                            
查看完整回答
反对 回复 2019-04-19
  • 2 回答
  • 0 关注
  • 277 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信