问题标签 [zio]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - HttpRoutes[RIO[E, *]] 和 HttpRoutes[zio.Task] 之间的编译问题
试图编译这个小型 ZIO 友好的 Tapir/Http4s 端点描述
并继续把它放在最后一行。
Type mismatch. Required: HttpRoutes[RIO[E, *]], found: HttpRoutes[zio.Task]
任务是 RIO 的子类型,所以这应该可以正常工作吧?或者我在这里错过了什么。这个世界有点菜鸟,所以非常感谢一些帮助。
scala - 如何将 http4s 服务器定义为 ZIO ZLayer,以便在主中注入和获取?
帮助我使用 ZLayers 定义一个 http4s。我正在学习,我很困惑。我想将 http 服务器作为一个组件。但我不知道如何组合 ZManageds 和 ZLayers 以便编译。
创建一个需要Runtime[ZEnv]
? ZEnv
或者创建一个需要 a 的层并为其生成运行时是否更有意义。
我不知道如何ZManaged[..., ..., Server]
从Layer
这里主要访问。我不完全理解这些access
方法。
也在底部,但重要性较低
PR 中的相同内容,请随时发表评论 https://github.com/kovacshuni/itsaren/pull/1
concurrency - 将 Hikari 事务器用于 Doobie 和 ZIO 时遇到死锁
我在 ZIO 应用程序中使用 Doobie,有时会出现死锁(应用程序完全冻结)。如果我只在一个内核上运行我的应用程序,或者如果我达到与数据库的最大并行连接数,就会发生这种情况。
我的代码如下所示:
或者,我在 Hikari ( config.setLeakDetectionThreshold(10000L)
) 上设置了泄漏检测参数,我得到泄漏错误,这不是由于处理数据库查询所花费的时间。
scala - Scala ZIO Stream——将 Stream[A] 转换为 Stream[B],其中一个 A 产生零个或多个 B
我有一个Stream[A]
和一个zeroOrMoreB(value: A): Seq[B]
给定A
返回零或更多的函数B
。从这两部分,我如何构造一个Stream[B]
?
我可以得到一个Stream[Stream[B]]
(见下文),但我不知道如何把它弄平。
scala - 将 ZIO Stream 的输出写入文件
我正在尝试将 ZIO 流的结果写入文件。以下示例应用程序采用整数序列,将它们转换为字节,使用 gzip 转换器压缩它们,但我不知道如何将它们写入文件。
我想我需要使用ZSink.fromOutputStream
,但我不确定它如何适合代码。
scala - 在产生特定值之前,如何重复执行 Zio 计划?
假设我有一个 IO(因此不安全)操作将返回true
或false
. 我想使用 Zio 调度机制来执行此操作,直到值为true
,但最多只能执行 N 次。采用文档中的代码并将其更改为我想要实现的...
这当然行不通。输出是Succeeded with false
or (偶尔) Succeeded with true
。我尝试添加Schedule.recurUntilEquals
到Schedule
定义中,但无济于事。
如何使用 Zio 调度程序完成这样的用例?当然,我可以重新定义makeRequest
任务以故意抛出异常,而不是返回 false,这与文档中的工作方式一样。但我希望避免不必要的异常生成/处理。
scala - 用于 ftp 的 Scala zio
我想在zio中做sftp。我有这段代码。
当我尝试读取文件的内容 (Chunk[Byte]) 时,我得到的输出是字节。谁能告诉我一种将 Chunk[Byte] 解析为 Zio 中的字符串并保存文件内容的方法。
scala - Scala - 最终超时和 Thread.sleep() 之间的区别
我有一些需要测试的异步(ZIO)代码。如果我使用Thread.sleep()
它创建一个测试部分工作正常,我总是得到响应:
但是,如果我使用timeout
和interval
从那时起使用相同的逻辑,eventually
它就永远无法正常工作(我有超时):
我不明白为什么timeout
和interval
工作方式不同Thread.sleep
。它应该做完全相同的事情。有人可以向我解释一下并告诉我应该如何将这段代码更改为不需要使用Thread.sleep()
吗?
scala - ScalaJs + ZIO:程序适用于 sbt 1.2.8 但不是 >= 1.3
我正在使用 https://github.com/wongelz/zio-scalajs-solarsystem 上的示例应用程序尝试使用 zio 的 scala.js
一旦我将 sbt 版本从 1.2.8 更新到 1.3.13 或 1.4.4,我就会收到以下错误:
为什么会出现这个错误?我应该在哪里报告?
scala - 如何缩小 ZIO Schedule 环境?
有一个使用 ZIO 效果返回None
或的简单 API 示例Option[String]
。我使用 ZIO Schedule 来运行效果,只要None
返回,但仅限于一定次数。该示例基于ZIO usecases_scheduling中的代码:
下面的这种效果具有以下类型ZIO[Random with clock.Clock, Throwable, Option[String]]
:
我想通过提供环境来消除对的ScheduleUtil.schedule
依赖并获得效果:Random
Random
ZIO[Any with clock.Clock, Throwable, Option[String]]
但我得到编译错误:
应该为.provide
方法提供什么参数?