立即学习:https://edu.csdn.net/course/play/26270/326871?utm_source=blogtoedu
用Future解决主线程中多线程异步并发获取数据问题的原理:
主线程阻塞等待线程池执行结果,从共享变量中获取结果。
实现过程:将callable任务放入线程池的FutubreTask(即执行任务的线程Runable)中,FutureTask执行run()方法(本质是调用callable的call()方法),获得返回值放到FutureTask的outcome中,在future调用future.get()时返回outcome的值,最终拿到数据。