据我所知,NoFlo端口发送了7个事件:
连接, 连接, 请将BeginGroup, 数据, 端基, 断开, 分离
对我来说,其中一些事件听起来非常相似,例如attach + connect和disconnect + detach。有什么区别?
begingroup和endgroup是什么意思?
这些事件什么时候被发出?它们何时被使用?
我在http://noflojs.org/documentation/components/#portevents
看到了文档假设附加和分离用于处理NoFlo UI情况,例如更改组件的状态,我的假设是否正确?
另一个假设是每次发送数据之前都会触发连接?然后数据被触发。然后断开?对我来说似乎有点奇怪......
当涉及到群体时,我完全处于黑暗中。
答案 0 :(得分:4)
attach
和detach
。所以通常它们发生在网络启动时,在IIP发送之前。
例外情况是,您使用Flowhub等工具对图表进行实时编辑。在这种情况下,只要您连接或删除电线,就会发生attach
/ detach
。
大多数组件不需要关心附件事件。
connect
在上游连接发送数据之前发生,而disconnect
在上游连接表明它已发送了它想要发送的所有内容时发生。所以实际上它们是传输开始和传输结束事件。如果上游组件有一批要发送的新数据,则可以在connect
之后再次选择disconnect
。
data
是包含实际有效负载的数据包的事件。
begingroup
和endgroup
是包含有关正在发送的数据的元数据的“括号IP”。它们可用于creating tree structures包数据。
例如,filesystem/ReadFile
会将文件内容作为data
数据包发送,但文件名是通过括号IP使用begingroup
/ endgroup
数据包发送的。实际文件内容。
noflo-groups库提供了许多用于利用组信息进行同步,路由等的组件。