您的位置:首页 > 理论基础 > 计算机网络

【Volley】网络操作和逻辑操作顺序的重要性

2015-12-12 14:50 471 查看
1、 如下代码,有时候会出现获取不到值的情况

presenter.getBalance();    // 网络操作
showBalance();             // 逻辑操作
// 假设getBalance()中,服务器会返回一个balance的值,
// 在showBalance()中,要显示这个balance的值
// 此时就很可能显示不出来,并出现空值
// 因为,volley的机制是,网络操作异步进行不影响主线程
// getBalance()方法执行完了(此时balance的值很可能正在过来的路上),又会立刻执行showBalance()方法
// 如果出现了时间差,就会出错啦


2、所以,应该这么写

if(presenter.getBalance()){    // 这里的if是确定getBalance()方法执行完了,得到balance的值了
showBalance();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android Volley