android中,如果用户在读取信息的时候,我们正在修改其中的数据,怎么让用户及时读到已改的信息?
没有真正意义上的即时系统,所以,只可能是尽可能优化处理逻辑及效率,让用户察觉程序过程是一个平滑的过程。题主前边举的图片修改读取的例子并不是很恰当,既然要后台修改图片又想用户能获取修改后的图片,那这期间的等待过程是一个必须的过程,难不成你还想把不完整的或是错误的数据展现给用户?这种情况,加锁等待是正确的方式,不过也涉及到数据量大小、逻辑处理耗时的问题,实际情况还要复杂得多,网络异常超时、存储空间状况、数据加工等,
在用户交互层,小量数据可加锁等待和超时处理,这应该是可接受的延迟
大量数据及复杂逻辑的后台处理,可采用通知更新的方式,后台处理完了再通知交互层调用更新
做到这两点,就应该有不错的体验了。
没太看懂,直接更新用户所看到的部分不就行了吗?你的意思是不是更改了信息,用户没有重新加载页面,所以看不到?如果是这样的话,完全可以在修改信息完成后刷新UI,同步直接在操作完成后刷新,异步在callback里刷新。如果是文件,则重新载入。
3 回答975 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
1 回答846 阅读✓ 已解决
2 回答959 阅读
2 回答895 阅读
1 回答833 阅读
2 回答702 阅读
应该使用观察者模式