以太坊源码解读-第5.5讲-rpc 订阅模块解读

前言

以太坊的rpc是拥有订阅功能的,这里大概介绍一下这个订阅功能

订阅方法的规则

rpc注册service的时候,也可以注册订阅。
这个过程请参考:以太坊源码解读-第5.4讲-http rpc server相关源码详解
其中主要就是判断一个结构体的某个方法是属于订阅方法还是普通方法。
可在源码rpc->utils.go->isPubSub(methodType reflect.Type)这里找到。
订阅方法的规则如下(必须满足以下5点要求):

  1. 方法参数个数必须>1
  2. 方法返回参数个数必须=2
  3. 方法第一个参数必须是context
  4. 方法第一个返回参数必须是Subscription类型的
  5. 方法第二个返回参数必须是error类型的
Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.
  • Copyrights © 2017-2023 Jason
  • Visitors: | Views:

谢谢打赏~

微信