RxJava-在 Observable 链中执行 peek() 或 void 操作?

2024-03-12

Java 8 lambda 流有一个peek()运算符允许您对每个项目执行 void 操作。这通常用于调试,但它也是一种欺骗和启动 void 操作而不映射到某些内容的好方法。

RxJava 中有类似的东西吗?也许我没有遵循良好的实践或反应性思考不够......但是在操作之前和之后创建状态标签真的很方便吗?如果peek()不支持,有更好的模式可以遵循吗?

Observable<Item> Item= ...;

Label statusLabel = new Label();
Label resultLabel = new Label();

Observable<CalculatedItem> calculatedItem = calculated.subscribeOn(Schedulers.computation())
.peek(c -> statusLabel.setText("Working.."))
.map(c -> performExpensiveCalculation(c))
.peek(r -> statusLabel.setText(""));

calculatedItem.subscribe(c -> resultLabel.setText(c));

有一个方法doOnNext(Action1<Item> action)将为流中的每个项目调用它。

文档 http://reactivex.io/documentation/operators/do.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

RxJava-在 Observable 链中执行 peek() 或 void 操作? 的相关文章

  • 区域设置的 Java 日期格式

    我怎样才能找到DateFormat对于给定的Locale DateFormat getDateInstance int Locale 例如 import static java text DateFormat DateFormat f ge
  • JFace DialogCellEditor:如何使按钮始终出现?

    我用的是JFaceDialogCellEditor在 JFace 的一行单元格中显示一个按钮TableViewer激活时会触发一个对话框 此行为适用于以下代码 但仅当显式选择托管按钮的表的单元格时才会显示该按钮 public class C
  • Spring中需要多个相同类型的bean

    将其标记为重复之前的请求 我浏览了论坛 但在任何地方都找不到该问题的解决方案 我正在使用 Spring 3 2 编写代码 一切都是纯粹基于注释的 该代码接收从不同 XSD 文件派生的 XML 文件 所以我们可以说 有五个不同的 XSD A1
  • Android WebView - 带有经过身份验证的代理

    我目前正在尝试调试围绕 WebView 构建的 Android 应用程序 我负责处理的开发网络环境 不是我的选择 这是 企业 安全决策 是WPA WiFi 代理服务器 代理身份验证 虽然a上的说明以前的答案非常有帮助 https stack
  • 如何缓解 Apache Log4j 反序列化 RCE (CVE-2019-17571)

    我已将 log4j core 依赖项升级到 2 15 0 以防止任何潜在的 Log4Shell 攻击 话虽如此 我无法从 1 2 17 升级 slf4j log4j12 的间接 log4j 依赖项 因为 slf4j log4j12 的最新稳
  • JUnit 测试 Spymemcached 客户端

    我有一个类围绕spymemcached 客户端 我想编写一些JUnit 测试来测试getValue 和addKey 方法是否有效 问题是无法从测试服务器访问spymemcached 服务器 所以我想这里需要一些模拟 我的简化类看起来像这样
  • 使用 lsof 对“打开的文件过多”进行故障排除

    我有一个在 Linux 上运行的 Java 应用程序 PID 为 25426 运行时lsof p 25426 我注意到 java 25426 uid 420w FIFO 0 8 0t0 273664482 pipe java 25426 u
  • 字符串文字的行为令人困惑

    下面的代码中字符串文字的行为非常令人困惑 我可以理解第 1 行 第 2 行和第 3 行是true 但为什么是第 4 行false 当我打印两者的哈希码时 它们是相同的 class Hello public static void main
  • Android Studio 1.0.1 APK META-INF/DEPENDENCIES 中复制的重复文件

    我安装了 Android Studio 版本 1 0 1 并尝试将我的项目从 eclipse 导入到它 它给了我以下错误 Error Execution failed for task app packageDebug Duplicate
  • Spring数据异常处理

    我正在使用 Spring Data JPA 开发一个项目 我需要处理 JpaRepository 方法调用中的一些异常 在下面的代码中 我需要拦截主键违规错误 但无法直接捕获异常 就我而言 当发生此类异常时 存储库层 JpaReposito
  • GSON 预期为 BEGIN_ARRAY,但实际为 BEGIN_OBJECT

    当我仅收到列表中的一项时 我收到此错误 我在服务器端 REST Web 服务中使用 Jersey 只有当列表返回一个元素并且它具有0 elements I get java lang NullPointerException但是当它有多个时
  • Spring 如何在登录网址上设置动态前缀

    我有一个始终以动态前缀开头的 Spring 应用程序 这是因为我需要该前缀来进行一些内部配置 问题是 当我尝试设置登录页面时 无法传递该前缀并使其工作 如何为我的登录页面设置动态前缀 这是我的 AppController 的一部分 我在其中
  • 如何使用 JAVA 将本地图像而不是 URL 发送到 Microsoft Cognitive Face API

    我正在尝试使用 Microsoft 认知服务的 Face API 我想知道如何通过 Rest API 调用将本地图像发送到 Face API 并使用它请求结果JAVA 有人可以帮我解决这个问题吗 Microsoft 在其网站上提供的测试选项
  • 光线追踪三角形

    我正在用java编写一个光线追踪器 并且我能够追踪球体 但我相信我追踪三角形的方式有问题 据我了解 这是基本算法 首先确定射线是否与plane三角形已打开 剪裁所有点 使它们与三角形位于同一平面上 因此xy以平面为例 根据沿着新平面向任意方
  • 如何获取eclipse中的工作空间路径? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在研究PDE Eclipse Plugin Project 我需要获取工作区路径 我的文本小部件 swt 应该设置为当前工作空间路径 如
  • 在可序列化 Java 类中使用记录器的正确方法是什么?

    我有以下 doctored 我正在开发的系统中的类以及Findbugs http findbugs sourceforge net 正在生成一个SE BAD FIELD http findbugs sourceforge net bugDe
  • Spring MVC - 两次提供内容

    我已经花了一周时间寻找有关如何将内容服务器到我的网页的指导 两次 因为使用 Model 或 ModelAndView 切断内容一次可以工作 但如果用户再次与页面交互 我希望它加载更多内容同一页 Java Spring 后端方法 Get 有效
  • 如何在pdf中导出一对一的JTable[重复]

    这个问题在这里已经有答案了 可能的重复 为什么 JTable 标题没有出现在图像中 https stackoverflow com questions 7369814 why does the jtable header not appea
  • 有没有办法在坐标平面上动态绘制点之间的线?

    我正在完成一个项目 在该项目中我实现了一个暴力算法来解决凸包问题 我还需要为该算法创建视觉效果 我试图在 x 轴和 y 轴上创建一个范围从 100 100 的坐标平面 绘制完整集中的所有点 并在点之间动态绘制线条以创建凸包 例如 假设我有
  • Java 8 中接口和抽象类之间的根本区别[重复]

    这个问题在这里已经有答案了 考虑到接口现在可以为其提供的方法提供实现 我无法正确合理地解释接口和抽象类之间的差异 有谁知道如何正确解释其中的差异 我还被告知 从性能角度来看 接口比抽象类更轻量 有人可以证实这一点吗 接口仍然不能有任何状态

随机推荐

  • Matlab:bar 不存在公共属性 CData

    Matlab示例代码无法在Matlab 2017a Linux 64位 中运行 https cn mathworks com help matlab ref bar html https cn mathworks com help matl
  • 在堆栈上增长数组

    这本质上是我的问题 在函数的生命周期中 我生成一些整数 然后在也是同一函数一部分的算法中使用整数数组 整数数组仅在函数内使用 因此将数组存储在堆栈上自然是有意义的 问题是在生成所有整数之前我不知道数组的大小 我知道如何在堆栈上分配固定大小和
  • 从另一个 url 加载动态模块 - angular4

    是否可以引用模块 已以 umd 或 es 格式编译 并将其动态加载到已编译的角度应用程序中 主 shell 应用程序托管于 http plugin shell mydomain com http plugin shell mydomain
  • 在没有数据库或用户名的情况下使用 php 密码保护文件夹/页面的最佳方法是什么

    使用没有数据库或用户名但使用 php 密码保护文件夹的最佳方法是什么 基本上 我有一个页面将列出组织的联系人 并且需要密码保护该文件夹 而无需为每个用户提供帐户 只需一个密码 该密码会经常更改并分发给群组 我知道它不是很安全 但我仍然想知道
  • ARM 未定义指令错误

    我在运行嵌入式系统 无协处理器 无 MMU Atmel 9263 时收到未定义指令错误 嵌入式系统的内存范围为 0x20000000 0x23FFFFFF 目前为止我遇到过两个案例 SP 0x0030B840 LR 2000AE78 LR指
  • 何时在 Gradle 任务中使用“<<”

    有时我会看到 task hey lt lt println Hello Gradle 其他时候我看到 task hey println Hello Gradle 什么时候使用 lt lt 你什么时候不这样做 以及为什么 lt lt 是简写d
  • 如何使用 Linq.Expressions 查询集合

    我构建了一个自定义 IQueryable 提供程序 例如 提供者转换查询 c PurchaseDate new DateTime 2011 11 29 c Name Elizabeth Brown 从底层代码到 System Linq Ex
  • Google 地图 V3 可见标记上的 fitBounds

    发现很难获得关于此的清晰信息 但我想要实现的是可见标记上的 fitBounds 该数组定义标题 类别 纬度 经度和 href 它将所有标记添加到地图 但仅显示第一个类别 当您单击其他类别时 它也会显示这些类别 我可以让 fitBounds
  • 在python2虚拟环境中安装python3

    我有一个在 Python 2 虚拟环境中运行的 Flask 应用程序 我想要运行Python 3程序 所以我需要将python3安装到虚拟环境中 我该怎么做呢 我必须重新创建环境吗 这是一次艰难的迁移吗 不建议混合使用多个版本的Python
  • React Router 与 Spring Boot 路由冲突

    我正在前端使用 React 创建 Spring Boot 应用程序 我可以在浏览器中打开该页面 但在后端出现错误 RequestRejectedException The request was rejected because the U
  • Core Audio (iOS 5.1) Reverb2 属性不存在,错误代码 -10877

    我正在玩苹果的示例项目 LoadPresetDemo 我添加了混响音频单元AudioUnit kAudioUnitSubType Reverb2如图所示 这是唯一可用的 iOS 混响 在 CoreAudio 头文件 AudioUnitPar
  • Javascript DOM .querySelector() null 问题

    我正在用纯 JavaScript 编写代码 有很多场景我会使用querySelector 方法 我多次遇到问题 比如 对于以下代码 未捕获类型错误 无法读取 null 的属性 classList document querySelector
  • 使用 Docker compose 传递 Dockerfile 的参数

    我正在尝试在构建阶段使用参数化我的 dockerfiles 并在 Docker compose 中使用参数 例如 在 Docker compose 中 我定义了一项名为 bpp 的服务 如下所示 bpp build context dock
  • 如何在 Flutter 中检测另一个应用程序是否打开?

    已编辑 我想创建一个阻止使用社交媒体应用程序的应用程序 就像他们打开 Instagram 或其他东西一样 Flutter 应用程序就会知道 当我的 Flutter 应用程序打开时 如何检测另一个应用程序 例如 Instagram 或 Twi
  • 数据集可扩展吗?像 myspace 这样的网站会使用它们进行数据检索吗?

    数据集的可扩展性如何 团队成员希望使用数据集进行数据检索和操作 使用内置的数据完整性等来使用对象执行数据更新等 我们的系统预计将扩展到数百万用户 我读到的所有内容都是针对企业环境中的数据集的 我在这里错了还是什么 免责声明 这些是我根据个人
  • 使用 Objective-C 以编程方式释放系统内存

    所以 这就是我想做的 释放系统内存 非活动内存 以同样的方式purge命令确实如此 尽管是以编程方式 我已经尝试过这里的代码 其作者声称它有效 但它所做的只是导致 Mac OS X 冻结 void free up memory int c
  • Prolog - 回文函子

    我正在尝试写一个谓词palindrome 1在 Prolog 中 当且仅当其列表输入由回文列表组成时 这才是正确的 例如 palindrome 1 2 3 4 5 4 3 2 1 is true 有什么想法或解决方案吗 回文列表是一个向后读
  • AutoLayout,无法同时满足约束

    刚刚开始学习 iOS AutoLayout 界面构建器非常简单 但是当我尝试在代码上存档相同的内容时 self view addConstraints NSLayoutConstraint constraintsWithVisualForm
  • 防止 ASP.NET 对输出中的字符串进行编码

    当页面呈现时 如何阻止 ASP Net 对列表项中的锚标记进行编码 我有一个对象的集合 每个对象都有一个链接属性 我执行了 foreach 并尝试在 BulletedList 中输出链接 但 ASP 对所有链接进行了编码 任何想法 谢谢 这
  • RxJava-在 Observable 链中执行 peek() 或 void 操作?

    Java 8 lambda 流有一个peek 运算符允许您对每个项目执行 void 操作 这通常用于调试 但它也是一种欺骗和启动 void 操作而不映射到某些内容的好方法 RxJava 中有类似的东西吗 也许我没有遵循良好的实践或反应性思考