我想同时运行函数 public void updateAdapter (Boolean isFavoriteActive ){
ChannelsQueryRealm =
realm.where(Channels.class)
.equalTo("isFavourite", true)
.findAll(); // here i fetched the data that i want to put in my recyclerView
channelsIDArray.clear();
channelIsFavoriteArray.clear();
for (Channels channels : ChannelsQueryRealm) {
channelsIDArray.add(channels.getObjectId());
channelIsFavoriteArray.add(channels.getIsFavourite());
} // here i added new updated data in my array's
new Runnable() {
public void run() {
channelsAdapter.notifyDataSetChanged(); // and here i'm trying to reflect the change but its not working fine because the updated change is not reflecting correctly on desired row
}
};
}
和f1
,然后只有在完成后才执行操作。
似乎如果函数在脚本中是后向的,脚本看不到f2
值更改,直到循环不会终止并且不执行最后一行。
编辑 - 需要其他功能
2.有没有办法可以读取/写入脚本中的主流程变量(不使用文件)?
感谢您的阅读。
f1/f2done
答案 0 :(得分:5)
f1
和f2
将是独立的进程,因此具有与主进程分开的地址空间。因此你的循环将是无限的。
您需要改为使用wait
。
即
变化
until [[ "$f1done" == "true" && "$f2done" == "true" ]]; do
echo "$f1done $f2done...";
sleep 3;
done
到
wait;
wait;