问题标签 [cats-effect]

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.

0 投票
1 回答
188 浏览

scala - 猫效果:使用“parSequence”时看不到执行时间的减少

我是 cat-effect 库的新手,我遇到了并行执行的问题。我有一个我认为会受益的应用程序,但是当我在玩具构造上测试这个想法时,我似乎看不到执行时间的差异。我觉得我一定错过了一些对其他人来说很明显的东西,所以我想我会试试运气。在下面的代码中,我有两个数字序列(addInSequenceaddInParallel)求和的实现,两者都在run()函数中执行。当我运行程序时,我注意到它们的运行时间几乎相同。我错过了什么明显的东西吗?

看起来我应该看到运行时间减少到三分之一,但我必须以某种方式限制并行执行的能力。但是,文档似乎没有建议需要任何额外的设置,也没有我遇到的任何其他示例。任何想法将不胜感激。

0 投票
1 回答
1637 浏览

scala - 无标记决赛中的 parSequence 和 parTraverse

使用无标签最终(不使用 IO,而是使用通用 F)我如何抽象这样的东西:

我能得到的最接近的是parTraverseN从 Concurrent 对象中使用,但我认为这将同时运行而不是并行运行(如在parallelism中)。它也迫使我选择一个nwhere as parTraversenot。

列表的大小只是一个例子,它可能会更大。doSomething是一个纯函数,它的多次执行可以并行运行而不会出现问题。

理想情况下,考虑到doSomething返回值,IO[Unit]我想抽象parTraverse_F具有正确类型类实例的一个。

0 投票
1 回答
890 浏览

scala - Cannot find an implicit value for ContextShift

I am trying to create webapp with http4s that is based on Http4sServlet. The following code does not compile:

the error message:

The UserSvcServer is implemented as follows:

How can I import ContextShift implicitly?

0 投票
1 回答
652 浏览

scala - 如何使用 fs2-kafka 从 Embedded-kafka 读取

我正在使用fs2-kafkaembedded-kafka读取。

我使用创建嵌入式 kafka withRunningKafkaOnFoundPort,创建主题并发布一些消息。但是,当我尝试使用 fs2-kafka 读回它时,我得到了 NullPointerException。我已经隔离了一个测试用例,代码如下。

这是我的代码:

build.sbt

这里是堆栈跟踪:

0 投票
2 回答
302 浏览

scala - 如何在抽象效果类型上配置 Cats Timer

假设我在使用无标记Cats-effect最终方法的项目中有以下方法签名:

我正在尝试schedule使用纯 FP 对方法调用安排操作。

我试过这样:

但它没有用,因为效果 println("tick")Timer初始化阶段执行。

我怎样才能让它正常工作?

我还可以创建某种递归构造,以便每 10 秒重复一次我的预定操作吗?

0 投票
0 回答
72 浏览

scala - 为什么 SemigroupK.combineK 语法不能用于 Resource[F, ?]?

考虑以下简单的应用程序:

有没有办法应用combineK语法Resource[F, Unit]

0 投票
0 回答
98 浏览

scala - 代数提供时是否可以停止所有流?

我有以下返回的特征fs2.Stream

返回fs2.Stream的 s 是无限的,因此应该能够阻止它们。给定一个实现trait Test是否有可能创建一个Resource[IO, Test]停止def action(arg: Int): fs2.Stream[IO, Unit]发布时返回的所有流?

0 投票
1 回答
68 浏览

scala - Stateful implementation of F-algebra

Consider the following simple F-algebra

I want to provide implementation of it that tracks all of the added values and adds those that have not been added yet. It has to be done in a thread safe manner.

The "best" implementation I could come up with is using MVar[F, Ref[F, List[Int]]]. Here is how it looks like

It looks pretty messy, but works as expected. I initially thought of using StateT, but I don't like the idea that statefulness is exported to clients.

0 投票
1 回答
120 浏览

scala - 我需要做些什么来移植 ReactiveMongo scala 以使用猫效果?

说如果我想在 http4s 之类的东西中使用 ReactiveMongo 是否正确,我将不得不将 ReactiveMongo 返回的所有 Future 调用包装在 Cats IO 效果中?

概括地说,将 ReactiveMongo 合并到 http4s 中需要哪些步骤?

0 投票
1 回答
116 浏览

scala - Scala 单例对象和隐式解析

在 scala 中使用单例对象进行隐式解析的最佳方法是什么?这对于Either自定义错误对象尤其常见。

在下面的代码示例中,方法返回包装在 IO 中的特定于应用程序的错误。错误由扩展的单例对象表示Throwable。此代码无法编译,因为 scala 正在寻找隐式 forAppSpecificError.type而不是Throwable.

可以将所有内容放入具有指定类型的变量中,但看起来很奇怪。这似乎是一个很常见的情况,解决它的最佳方法是什么?