首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏学海无涯

    Combine-Subscriber

    Subscriber定义 public protocol Subscriber: CustomCombineIdentifierConvertible { /// 可以接收的数据的类型 Publisher 通过调用Subscriber.receive(subscription:)发送确认信息给 Subscriber。这个方法接收一个 Subscription。 Publisher 通过调用Subscriber.·receive(_: Input)发送 1 个数据或者事件给 Subscriber 。 同4 Publisher 通过调用Subscriber.receive(completion :)向 Subscriber 发送 completion 完成事件。 自定义 自己实现一个 Subscriber,写完以后对 Publisher 和 Subscriber 之间的关系会更加明晰。

    1.2K20发布于 2020-04-16
  • 来自专栏关忆北.

    Reactor的Publisher与Subscriber

    弹性) Message Driven(消息驱动) asynchronous request(异步请求) non-blocking(非阻塞) Backpressure(背压) 数据处理流程 测试代码 Subscriber 增强类: public class LoggingSubscriber<T> implements Subscriber<T> { private static final Logger log sub.block(); assertEquals(5, sub.getReceived()); } } 一些核心概念 Operators-Publisher/Subscriber

    89510编辑于 2022-11-12
  • 来自专栏skyyws的技术专栏

    Impala metrics之statestore-subscriber

    固定的metrics 第一类就是几个固定的metrics,如下所示: statestore-subscriber.connected statestore-subscriber.heartbeat-interval-time statestore-subscriber.last-recovery-duration statestore-subscriber.last-recovery-time statestore-subscriber.num-connection-failures 这些metrics都是在statestore的subscriber启动之后直接注册的。 我们可以在metrics.json文件中找到这两类模板,如下所示: statestore-subscriber.topic-$0.processing-time-s statestore-subscriber.topic 小结 到这里,关于“statestore-subscriber”相关的metrics就介绍的差不多了。

    60830编辑于 2022-05-20
  • 来自专栏Visual Codex

    CSG(Closed Subscriber Group)闭合用户组

    CSG是3GPP R8中引入的概念,定义为闭合用户组。有以下特点: 每个CSG由一个CSG ID标识 同一用户可属于多个CSG,用户与CSG的关系就好比签约,启用了CSG小区只会允许签约用于接入 UE维护一张它所属CSG的CSG ID列表,在这个列表之外的其他CSG ID所对应的CSG小区对该UE而言是不可访问的。 每个CSG小区广播一个CSG ID,这个CSG ID所标识的闭合用户群的成员可以访问该小区 CSG模式需要终端和核心网的支持,在R8之前的终端和核心网都无法使用CSG功能。

    1.3K10发布于 2021-02-24
  • 来自专栏Coxhuang

    ROS2 C++ Subscriber Publisher 订阅发布例子

    文章目录 ROS2 Subscriber Publisher 例子 ROS2 Subscriber Publisher 例子 运行环境 Ubuntu 20.04 ROS Foxy sub #include

    1.3K60编辑于 2022-05-09
  • 来自专栏Coxhuang

    Cpp ROS(一)发布器Publisher和订阅器Subscriber简单例子

    ROS发布器Publisher和订阅器Subscriber(roscpp) #1 环境 Ubuntu 16.04 ros kinetic #2 概述 本文通过两种方式编译,一种是直接使用CMake,另一种是 catkin_make 两种方式任选一种 #3 CMake编译 来源官方文档: 传送门,点我点我 #3.1 开始 创建目录,用于存放Publisher 和 Subscriber代码 mkdir - #3.1 Subscriber #3.1.1 创建Subscriber vim ~/catkin_ws/src/my_node_demo/src/subscriber.cpp #include "ros subscriber_demo ${catkin_LIBRARIES}) #3.1.3 编译运行 编译 cd ~/catkin_ws/ catkin_make ? // rosrun 包名 节点名 rosrun my_node_demo subscriber_demo ?

    1.3K10发布于 2020-11-09
  • 来自专栏开发者技术前线

    框架设计|自己撸一个RxJava 可好?(上)

    <String> subscriber = new Subscriber<>(); observable2.subscribe(subscriber); create() 跟之前一样,那么 map() <String> subscriber = new Subscriber<>(); observable2.subscribe(subscriber); 到这里,清楚了如何把第一个 Observable .call(subscriber) 即 OnSubscribeLift.call(subscriber) --> 3) Subscriber<Integer> st = operatorMap.call <String> subscriber = new Subscriber<>(); observable3.subscribe(subscriber); 1) observable3.subscribe (subscriber) --> 2) onSubscribe3.call(subscriber) 即 OnSubscribeLift.call(subscriber) --> 3) Subscriber

    50420发布于 2020-11-23
  • 来自专栏韩曙亮的移动开发专栏

    【EventBus】发布-订阅模式 ( 使用代码实现发布-订阅模式 )

    ("Subscriber1 订阅者收到消息 " + msg); } } 订阅者实现类 2 : public class Subscriber2 implements Subscriber { */ public void register(Subscriber subscriber) { subscribers.add(subscriber); } /** * 取消订阅者 * @param subscriber */ public void unregister(Subscriber subscriber subscriber1 = new Subscriber1(); Subscriber2 subscriber2 = new Subscriber2(); // 注册订阅者 Dispatcher.getInstance().register(subscriber1); Dispatcher.getInstance().register(subscriber2

    1.5K20编辑于 2023-03-29
  • 来自专栏Java与Android技术栈

    Cold Observable 和 Hot Observable

    subscriber2: 0 subscriber1: 1 subscriber2: 1 subscriber1: 2 subscriber2: 2 subscriber2: 3 subscriber1 : 3 subscriber1: 4 subscriber2: 4 subscriber2: 5 subscriber1: 5 subscriber1: 6 subscriber2: 6 subscriber1: 7 subscriber2: 7 subscriber1: 8 subscriber2: 8 subscriber1: 9 subscriber2: 9 执行结果: subscriber1: 0 subscriber2: 0 subscriber1: 1 subscriber2: 1 subscriber1: 2 subscriber2 : 2 subscriber3: 2 subscriber1: 3 subscriber2: 3 subscriber3: 3 subscriber1: 4 subscriber2

    1.2K20发布于 2018-08-24
  • 来自专栏斑斓

    AKKA中的事件流

    基于Publisher-Subscriber模式,还可以根据不同的场景衍生出特殊的模式,例如针对一个Publisher和多个Subscriber,演化为Broadcast模式和Message Router 总线就是Mediator,用以协调Publisher与Subscriber之间的关系。或者,我们也可以认为是两个Publisher-Subscriber的组合。 对于Publisher而言,总线就是Subscriber;对于Subscriber而言,总线则成了Publisher。 def subscribe(subscriber: Subscriber, to: Classifier): Boolean def unsubscribe(subscriber: Subscriber : ActorRef) = { if (subscriber.isTerminated) unsubscribe(subscriber) else subscriber !

    2.3K40发布于 2018-03-07
  • 来自专栏杨建荣的学习笔记

    循序渐进调优union相关的sql(r2笔记23天)

    AGREEMENT_NO"="SUBSCRIBER"."SUBSCRIBER_NO") 13 - filter(("SUBSCRIBER"." AGREEMENT_NO"="SUBSCRIBER"."SUBSCRIBER_NO") 19 - filter(("SUBSCRIBER"." -- SUBSCRIBER.CUSTOMER_ID, -- subscriber.subscriber_no, -- SUBSCRIBER.SUBSCRIBER_TYPE AGREEMENT_NO"="SUBSCRIBER"."SUBSCRIBER_NO") 13 - filter("SUBSCRIBER"." AGREEMENT_NO"="SUBSCRIBER"."SUBSCRIBER_NO") 25 - filter("SUBSCRIBER"."

    88560发布于 2018-03-14
  • 来自专栏全栈私房菜

    TypeScript 实用工具类型之 Partial 类型

    我们将允许 Subscriber 点赞和评论。所以,情况是这样的: GuestUser 必须用他们的 email 注册并成为 Subscriber 。 在这种情况下,我们之前派生的 Subscriber 类型不能以我们想要的方式交付我们的需求: type Subscriber = { userId: number, macAddress: string 与 Subscriber 类型不一致。 : string, }; const subscriber: Subscriber = { userId: 4, macAddress: '1.2.3', username: 'xiaan subscriber.password = '12345678'; subscriber.firstName = 'an'; subscriber.lastName = 'xia'; console.log

    65321编辑于 2022-10-24
  • 来自专栏luozhiyun的技术学习

    8.源码分析---从设计模式中看SOFARPC中的EventBus?

    extends Event>, CopyOnWriteArraySet<Subscriber>> SUBSCRIBER_MAP = new ConcurrentHashMap<Class<? isEnable()) { return; } //根据传入得event获取到相应的Subscriber CopyOnWriteArraySet<Subscriber for (final Subscriber subscriber : subscribers) { //如果事件订阅者是同步的,那么直接调用 if (subscriber.isSync()) { handleEvent(subscriber, event); } else { // 异步 在我们这个例子里EventBus的职责就是调度中心,subscriber的具体实现注册到EventBus中后,会保存到EventBus的SUBSCRIBER_MAP集合中。

    56030发布于 2019-08-28
  • 来自专栏开发者技术前线

    框架设计|自己撸一个RxJava 可好?(下)

    super Integer> subscriber) { subscriber.onNext(8); subscriber.onNext(9); } }); Observable super String> subscriber) { subscriber.onNext("A"); subscriber.onNext("B"); subscriber.onNext ) 调用过程 1) zipObservable.subscribe(subscriber) --> 2) onSubscribeLift.call(subscriber) --> 3) Subscriber subscriber2= operatorZip.call(subscriber) --> // 重点就是这一步 4) onSubscribe.call(subscriber2) 5) subscriber2 >[]> call(Subscriber<?

    47810发布于 2020-11-23
  • 来自专栏码匠的流水账

    聊聊reactive streams的processors

    - flux subscriber:4 16:31:24.053 [main] INFO com.example.demo.ProcessorTest - flux subscriber:5 16:31 - flux subscriber:7 16:31:24.054 [main] INFO com.example.demo.ProcessorTest - flux subscriber:8 16:31 ,同时还对每个subscriber支持backpressure。 TopicProcessor也支持把消息广播(fan-out)到多个subscriber,它给每个subscriber绑定一个线程。 能够支持的subscriber的最大个数由线程池executor限制。

    2.6K10发布于 2018-09-17
  • 来自专栏机器人课程与技术

    ROS2机器人编程简述humble-第二章-Launchers .3.3

    5 [subscriber_class-2] [INFO] [1674176812.195715200] [subscriber_node]: Hello 6 [subscriber_class-2] 9 [subscriber_class-2] [INFO] [1674176814.195719200] [subscriber_node]: Hello 10 [subscriber_class-2 13 [subscriber_class-2] [INFO] [1674176816.195665100] [subscriber_node]: Hello 14 [subscriber_class- 17 [subscriber_class-2] [INFO] [1674176818.195711000] [subscriber_node]: Hello 18 [subscriber_class- 21 [subscriber_class-2] [INFO] [1674176820.195726000] [subscriber_node]: Hello 22 [subscriber_class-

    80160编辑于 2023-02-10
  • 来自专栏BaronTalk

    RxJava系列六(从微观角度解读RxJava源码)

    protected Subscriber(Subscriber<? (Subscriber<? (subscriber instanceof SafeSubscriber)) { subscriber = new SafeSubscriber<T>(subscriber); 其实是subscriber的一个代理,对subscriber的一系列方法做了更加严格的安全校验。 super Integer> subscriber) { subscriber.onNext(1); subscriber.onCompleted(); } })

    1.8K70发布于 2018-04-13
  • 来自专栏Cellinlab's Blog

    RxJS 入门到搬砖 之 Observable 和 Observer

    (1); subscriber.next(2); subscriber.next(3); setTimeout(() => { subscriber.next(4); subscriber.complete => { subscriber.next(1); subscriber.next(2); subscriber.next(3); setTimeout(() => { subscriber.next subscriber.next(1); subscriber.next(2); subscriber.next(3); subscriber.complete(); }); Observable ) { subscriber.next(1); subscriber.next(2); subscriber.next(3); subscriber.complete(); subscriber.next ) { try { subscriber.next(1); subscriber.next(2); subscriber.next(3); subscriber.complete

    1.4K20编辑于 2023-05-17
  • 来自专栏企鹅号快讯

    iOS开发进阶篇——FRP与ReactiveCocoa的介绍(一)

    = [[self alloc] init]; subscriber->_next = [next copy]; subscriber->_error = [error copy]; subscriber { NSCParameterAssert(subscriber ! (2)订阅者初始化 我们单步跟踪进去,看一下: - (RACDisposable *)subscribe:(id)subscriber { NSCParameterAssert(subscriber ! ) { [subscriber sendNext:value]; }]; } - (void)enumerateSubscribersUsingBlock:(void (^)(id subscriber in subscribers) { block(subscriber); } } 以上代码不难看出,sendNext这一步会遍历订阅者数组,依次执行每个订阅者的block方法。

    72880发布于 2018-01-08
  • 来自专栏曾大稳的博客

    Android EventBus3.0源码分析

    接下来我们进入register函数 /** * Registers the given subscriber to receive events. , SubscriberMethod subscriberMethod) { this.subscriber = subscriber; this.subscriberMethod void unregister(Object subscriber) { List<Class<? } typesBySubscriber.remove(subscriber); } else { Log.w(TAG, "Subscriber == subscriber然后移除,最后在移除typesBySubscriber里面的这个订阅对象(Fragment ,Activity )。

    54610发布于 2018-09-11
领券