kotlinx.coroutines相关内容

在IntelliJ IDEA项目中使用kotlinx.coroutines

我正在尝试学习协程,所以我启动了IntelliJ并创建了一个临时文件。但是,当我在协程中输入时,我收到编译器的抱怨,比如runBlocking是一个未解析的引用。因此,这不是一个Android项目或任何类似的事情。只是一个基本的Kotlin项目中的临时文件。 如何引入协程内容以停止收到错误? 推荐答案 runBlocking和其他高级协程实用程序不在kotlin标准库中,而是库k ..
发布时间:2022-05-12 22:07:48 其他开发

带返回值的 Kotlin 协程

我想创建一个有返回值的协程方法. 例如) fun funA() = async(CommonPool) {返回 1}fun funB() = async(CommonPool) {返回 2}有趣的总和(){发射 {val 总计 = funA().await() + funB().await()}} 如果我想在sum方法中返回total,我该怎么做? 喜欢 fun sum(): I ..
发布时间:2021-12-10 17:47:55 其他开发

Kotlin Android 去抖

有没有什么奇特的方法可以用 Kotlin Android 实现 debounce 逻辑? 我没有在项目中使用 Rx. Java 中有一种方法,但它对我来说太大了. 解决方案 您可以使用 kotlin 协程 来实现这一点.这是一个例子. 请注意,协程是在 kotlin 1.1+ 上进行实验,可能会在即将推出的 kotlin 版本中进行更改. 更新 自从 Kotl ..

Kotlin异步/等待语法,不会阻塞调用方

我想弄清楚Kotlin是否可以替代我们当前处理异步代码的方式.现在,我们使用 CompletableFutures 处理异步代码.这是这种方法的示例: public void onBalanceRequest(客户端,字符串名称){db.fetchBalance(名称).thenAccept(balance-> {client.sendMessage(“您的钱:" +余额);});} 这里 ..
发布时间:2021-05-28 19:46:03 其他开发

Kotlin-如何运行n个协程并等待前m个结果或超时?

我正在尝试编写一个将启动n个协程并等待第一个m完成的函数.如果m个协程在某个超时时间内无法完成,则所有协程/作业都将被取消.我的初始实现如下所示,但是我觉得可以改进.我最初的想法是使用父作业在其下运行所有​​其他作业,以便可以取消父作业并将其级联到剩余的子级.但是,这导致必须捕获TimeoutCancellationException. 我该如何编写一个函数来启动n个协程并等待第一个m协程完 ..
发布时间:2021-05-28 19:40:11 其他开发

kotlin协程抛出java.lang.IllegalStateException:已经恢复,但是获得了值Location

我一般对Kotlin协程和Android开发还是陌生的.在游玩以了解其工作原理时,我遇到了一个似乎无法解决的错误. 在基本活动中,我尝试连接到googleApiClient.权限还可以.我希望使用kotlin协程以直接的方式从LocationManager获取位置更新,以便以后使用此Location对象.第一次更改模拟器中的位置可以正常工作,第二次更改位置时,它会崩溃除了这样的例外: 致命 ..
发布时间:2021-04-05 19:03:16 移动开发

如何加入Kotlin主管职位

我正在尝试处理数据对象树.假定每个树叶都应使用协程通过一个函数进行处理.整个过程应使用固定大小的线程池完成. 所以我想到了这个: val node = an instance of WorkspaceEntry (tree structure) val localDispatcher = newFixedThreadPoolContext(16) fun main() { v ..
发布时间:2021-02-15 19:39:35 其他开发

在项目中未解析`runBlocking`协程生成器(已解析其他生成器)

正如标题所示,我刚刚在build.gradle中添加的协程库中缺少协程生成器runBlocking.有趣的是,其他所有东西似乎都可用,所有GlobalScope,CoroutineScope.launch CoroutineScope.async都存在. runBlocking不是.我在做什么错了? 这是我的build.gradle buildscript { ext { ..

带有Kotlin-协程的房间观察数据库变化

因此,我最近开始进行协程的试验,我从Rxjava2切换到协程,我还没有掌握它,但是仍然遇到了一种情况,我需要观察数据库的变化并更新相应的UI RxJava过去曾向我提供Flowables,Completeable等,使我能够观察到Db的变化. abstract fun insert(data: SomeData): Long @Query("SELECT * FROM ..
发布时间:2020-06-29 19:20:54 移动开发

Kotlin协程处理错误和实现

首次使用协程.需要帮助. 这是我的流程: 演示者想要登录,因此调用存储库接口.存储库实现RepositoryInterface. 因此,存储库调用APIInterface. APIInterface由APIInterfaceImpl实现. APIInterfaceImpl最终调用MyRetrofitInterface. 以下是流程图: 演示者->存储库-> APIInter ..
发布时间:2020-06-29 19:20:45 移动开发

可以始终使用WorkManager代替协程吗?

我想知道当有出色的解决方案作为WorkManager时,为什么要理会rx或协程.但是对于几乎所有教程,他们都使用协程,所以WorkManager可能有缺点吗? 解决方案 两者的范围是不同的. WorkManager将安排可延期(任何以后的时间)或立即进行. 异步执行任务. 如文档所述 通过WorkManager API,可以轻松指定可延迟,异步的 任务以及何时运行.这些API可 ..