java runnable执行完_等待一个Runnable完成,然后再运行另一个Runnable

在Android应用中,主活动创建列表的Runnable完成后,其他活动的Runnable才应运行。当前使用全局布尔变量同步,但可能存在更好的解决方案。尝试使用synchronized和wait/notify实现同步时遇到运行时错误,导致应用崩溃。
摘要由CSDN通过智能技术生成

我有一个带有主标签页活动的Android应用程序,并且在单个标签页内有多个活动。在我的主要活动的onCreate()中,我有一个可运行的内容,它创建了一个列表,而在各个活动中,我都使用了此列表。

在各个活动的onCreate()中,我还具有在列表上运行的Runnable。但是,我需要这些Runnable仅在主选项卡活动的Runnable完成创建列表时才运行,否则我将得到一个空列表。我正在尝试找到一种优雅的方法。现在,在我的主活动的Runnable中,我设置了一个全局布尔变量isDone,在我的个人活动的Runnable中,我正在等待通过while循环设置isDone。这可行,但可能不是最好的方法。

有什么想法吗?

谢谢。

编辑:我正在尝试以下代码,但出现运行时错误:

在我的MainActivity的Runnable中:

mainRunnable = new Runnable() {

public void run() {

try {

generateList();

synchronized(this) {

listDone = true;

notifyAll();

}

} catch (Exception e) {

Log.e("BACKGROUND_PROC", e.getMessage());

}

}

};

Thread thread = new Thread(null, mainRunnab

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值