PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
AndroidDev
[问题] asynctask 加上 CountDownLatch
楼主:
valda
(valda)
2016-07-24 16:36:44
Hi
想请教一个问题
目前有一个需求
需要等待三个asynctask的结果
才能继续做下一步
goole到有人说可以使用countdownlatch
但我用的时候就一直卡在await
就停住了
不知道我哪里写错了
https://gist.github.com/swy680614/34bdc3c9a9ac1719d6a81eafdbbb7df9
作者:
y3k
(激流を制するは静水)
2016-07-24 21:00:00
AsyncTask的结果放三个变量在那边 三个Task结束时把结果塞过去并去check那三个变量是否null 这样写应该是最不花脑的
作者:
brian780405
(pohan)
2016-07-25 01:00:00
.execute()改成.executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR),试试看?
作者:
ssccg
(23)
2016-07-25 08:26:00
onPostExecute会在main thread上执行,但是你的main thread正在cdl.await(),所以就deadlock用CountDownLatch的话countDown要在做事的thread呼叫,不能在正在await的thread呼叫啊...另外AsyncTask如果用execute而不是用executeOnExecutor的话是在AsyncTask.SERIAL_EXECUTOR依序执行,所以其实用最后一个task的get()来等就好了但是block main thread仍然不是好的作法,如果用AsyncTask的设计概念,应该是在onPostExecute自己用一个计数变量去算完成了几个,因为都在main thread所以不用考虑同步问题
作者:
htury
(冰点)
2016-07-25 13:30:00
感觉好像在哪个fb社群看过一样的问题?同一楼,每个task结束去check三个变量,最后执行自己默认的method去check,都是true的代表时,就可以往下走
继续阅读
[问题] app登入与注册连结数据库错误
swim1123
[问题] phonegap 自行撰写相机
jhp280
[问题] 取得区网内的装置
brandonron
[问题] 用volley取得图片后,EXIF消失 (已解决)
wvwvwvwvwv
[问题] 同一份Code 会产生出不同的APK
charlie20083
[问题] vs用c++混hyperv模拟器 比安卓studio好用
dharma
[问题] phonegap与IIS网页连结问题
oDwyaneWadeo
[问题] Activity resume 后读不到存在的档案
javaddict
Re: [问题] 自动更新app
cutem
[问题] 有人试过在android 开发板读/dev/hidraw
blueblueChen
Links
booklink
Contact Us: admin [ a t ] ucptt.com