设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 重新 试卷 创业者
当前位置: 首页 > 运营中心 > 建站资源 > 优化 > 正文

1小时让你掌握响应式编程,并入门Reactor(3)

发布时间:2019-09-24 13:52 所属栏目:21 来源:Java之高级架构
导读:以下是输出结果: 1:15:00:39.809 1:1 5:15:00:40.158 5:1 mainThreadover,paused. 2:15:00:45.158 2:9 input:10 3:15:00:47.160 3:9 input:11 4:15:00:50.162 4:9 input:9 9consumed,workerThreadover,exit. 可以

以下是输出结果:

  1. 1 : 15:00:39.809 
  2. 1 : 1 
  3. 5 : 15:00:40.158 
  4. 5 : 1 
  5. main Thread over, paused. 
  6. 2 : 15:00:45.158 
  7. 2 : 9 
  8. input : 10 
  9. 3 : 15:00:47.160 
  10. 3 : 9 
  11. input : 11 
  12. 4 : 15:00:50.162 
  13. 4 : 9 
  14. input : 9 
  15. 9 consumed, worker Thread over, exit. 

可以看到不到1秒钟时间主线程就执行完了。然后5秒后数据从数据源发射出来进入第一步处理,2秒后进入第二步处理,3秒后进入第三步处理,数据被消费掉,就结束了。其中主线程Id是1,工作线程Id是9。

这段代码其实是建立了一个数据通道,在通道的指定位置上插入处理逻辑,等待数据到来。

主线程执行的是建立通道的代码,主线程很快执行完,通道就建好了。此时只是一个空的通道,根本就没有数据。

在数据到来时,由工作线程执行每个节点的逻辑代码来处理数据,然后把数据传入下一个节点,如此反复直至结束。

所以,在写响应式代码的时候,心里一定要默念着,我所做的事情就是建立一条数据通道,在通道上指定的位置插入适合的逻辑处理代码。同时还要切记,主线程执行完时,只是建立了通道,并没有数据。

如果本文内容你没有看懂,那就多看几遍,保证能懂。如果你都看懂了,那恭喜你已经入门响应式编程了。

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读