问题标签 [rxcpp]
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.
c++ - 如何在自定义 rxcpp 运算符上调用 on_error
我创建了一个简单的 rx 运算符,它将字符串流转换为 jsons 流,它工作正常。但是,我希望能够引发自定义异常,但我不确定如何调用on_error
订阅的方法
调用运算符convertStringToJson
,可以在此处找到工作示例:https ://github.com/cipriancaba/rxcpp-examples/blob/master/src/SimpleOperators.cpp
c++ - 如何在 rxcpp 自定义运算符中正确推断泛型
我创建了一个名为的自定义 rxcpp 运算符validateImplementation
,它应该简单地采用通用的可观察流,对 进行一些验证,SimpleInterface
然后根据特定条件继续或结束流(在我的情况下,条件whatsMyId
是
https://github.com/cipriancaba/rxcpp-examples/blob/master/src/SimpleOperators.cpp
但是,当尝试使用 中的validateImplementation
方法时main.cpp
,出现以下错误:
no matching member function for call to 'validateImplementation'
note: candidate template ignored: couldn't infer template argument 'T'
你能帮我理解我做错了什么吗?
c++ - llvm 错误:尚未实施重定位!在 orcjit 或 lli 中运行 RxCpp 时
我想在 llvm 的 IR 解释器中运行 RxCpp 示例lli
。
不幸的是,在 lli 中运行任何 RxCpp 示例都失败了:
错误信息:
问题:
这个错误到底是什么意思?- llvm 的 orc-jit 中有哪些不满足的假设?
有解决方法吗?- 我可以应用任何 LLVM-IR 转换来完成这项工作(例如,通过编译器标志)?
RxCpp 使用了哪些特殊功能导致 llvm 的 orcjit 出现此问题?
测试:
c++ - 传递给 lambda 函数的空指针不再为空
我尝试传递一个空指针作为对 lambda 函数的引用,但它会接收一个内存地址而不是保持为空。
知道如何传递该指针以使其保持为 null 吗?
c++ - rxcpp 简单可观察
我在 C# 中使用 RX 进行编程,现在我希望在 C++ 中使用 rxcpp 进行编程。我正在尝试做最简单的事情,定义一个类成员变量observable<int>
。
问题是observable
定义为:
是什么SourceOperator
?
我如何定义一个简单的observable<int>
?
查看代码时,在 rx-observable.hpp(第 101 行):
我找到observale<T>
作为返回类型,但找不到它的定义。
太奇怪了。老实说,虽然我非常精通 c++11\14 和元编程......显然兔子洞可以变得更深:-(
更新 1:
observale<T>
已找到 :-) 它在 rx-predef.hpp 中:
好的,我目前的猜测是,这dynamic_observable
意味着“常规”observable<T>
是 T 的动态、类型擦除流。这是合乎逻辑的,因为您只能将类型擦除流作为具有显式类型的变量。
是什么让我想到了下一个猜测,即template<class T, class SourceOperator> class observable
启用创建可观察类型的语法与“装饰器”模式中的其他可观察对象组合(编译时装饰)。像这里举例的东西
c# - 使用 RxCpp 构造 Observer/Observable 模式
我正在尝试observer/observable
在Rx-cpp
. 这是一个非常有趣的教程,Rx.Net
介绍了如何做到这一点。
在此C#
示例中interfaces
,我们必须覆盖特定的内容:
据我了解,在Rx-cpp
没有这样的方便。那么,是否可以为我提供一些类似于上面的标题示例( myObservable.h
/ ),我可以将其用作定义相同通信模式的指导? myObserver.h
interfaces
任何帮助都非常感谢,谢谢!
编辑 1:
感谢@zentrunix
,我正在尝试进行面向课堂的交流。到目前为止,我有以下可观察模式的代码。我想要的是定义一个观察者列表,这些观察者将我附加到可观察对象中,并且当OnNext
调用这些观察者时,应该通知这些观察者。但是,有缺失的部分。
c++ - 如何在 rxcpp 中处理请求/响应流
我需要在 rxcpp 中实现一个摄像头采样系统。我想象的方式是将 requestStream 作为参数传递并接收 responseStream
每次调用 requestSample 时,都会创建一个新的摄像头会话,当为 requestStream 调用 on_complete() 时,摄像头会话会终止
这里的问题是,在requestStream$.subscribe(request_next..
被调用的时候,我得到了一个 EXC_BAD_ACCESS
c++11 - RXCPP:阻塞功能超时
考虑一个阻塞函数: this_thread::sleep_for(milliseconds(3000));
我正在尝试获得以下行为:
我想触发阻塞功能,如果它需要太长时间(超过两秒),它应该超时。
我做了以下事情:
我不能让它工作。对于初学者,我认为 s 不能从不同的线程 on_next 。
所以我的问题是,这样做的正确反应方式是什么?如何在 rxcpp 中包装阻塞函数并为其添加超时?
随后,我想获得一个行为如下的 RX 流:
rxjs - RX - 如何以高效的方式使用它?
我试图了解如何构建我的程序以在性能问题中使用 RX。
我的应用程序在 3D 世界中有一个对象向量。每个对象占据一个盒子,并有一个“命中”流,代表鼠标悬停在它上面。
我想到了如何构建的两个选项:
选项1
选项 2
现在的问题是如何将 hit 函数的结果链接到 object_t::hit 流。
我看到两种方法:
- 选项 1 功能齐全,但性能很差,因为对于每个鼠标点,所有对象流都需要计算它们的值。
- 选项 2. 功能不完整,因为我使用 subject 以命令的方式将值推送到正确的流。但性能非常好,因为只有正确的(两个)对象命中流才会触发。
注意:
实现在 rxcpp 中,但它适用于我们在其中包含 RX 的任何语言,或一般 FRP 范例,这就是为什么我标记 rxjs\rx.net\frp 等
提前感谢 :-)
c++ - RXCPP:做一个不关心 observable 输入类型的扩展
我希望制作一个不关心它接收到的可观察类型的扩展函数。
例如:
如果可能,我希望能够在不指定模板的情况下调用此方法。
例如:
与
我想这更像是一个 c++ 问题而不是 rxcpp 问题。这可能吗?