保罗莫里森在这里说
FBP 的核心概念是异步运行的多个组件进程,通过跨现在称为有界缓冲区的数据块流进行通信。
那么,在node.js上构建的noflojs等单线程实现是如何模拟多个并发异步进程的呢?并且可以在其他单线程语言中使用相同的方法吗?
保罗莫里森在这里说
FBP 的核心概念是异步运行的多个组件进程,通过跨现在称为有界缓冲区的数据块流进行通信。
那么,在node.js上构建的noflojs等单线程实现是如何模拟多个并发异步进程的呢?并且可以在其他单线程语言中使用相同的方法吗?
不完全确定问题的范围是什么。
但我可以告诉你,Node.js 是基于Reactor Design Pattern的。
假设有足够的事件模型,可以在任何单线程语言实现中模拟这种模式。但这意味着任何长时间运行的进程都必须委托给,在准备好时发送回一个事件……而反应器只是代理交换。