【发布时间】:2020-01-08 21:02:01
【问题描述】:
我脑子里有问题,我不知道如何测试它。
假设我有一个函数getData,它从一个领域对象加载数据,它需要 5 秒。
如果没有协程,我需要在后台线程中调用这个方法以避免阻塞UI。
如果我将getData 更改为挂起函数,并在主线程上调用它,它是否仍会冻结 UI 线程 5 秒?还是会像在getData函数内部调用delay(5000)一样,不会阻塞UI线程?
我想创建一个简单的项目来验证这一点,但我没有足够大的数据来产生 5 秒的延迟。
【问题讨论】:
-
虽然如果从 Realm 获取数据需要 5 秒,那么我很好奇你拥有的数据量。 Realm 不喜欢在线程之间折腾,因为它是线程受限的,但是查询应该相当懒惰。
标签: android realm kotlin-coroutines