而提到并发,就常常会提到函数式编程。node
函数式更强调精确性。
函数式用变形替代了修改。编程
Elixir中的process只占用不多的资源,它们是相互独立的,经过收发消息来交流。
利用process咱们能在一个节点上保持大量的链接。网络
一般人们不会用顺序代码来编写并发的程序,而Elixir包含了顺序代码。并发
在并发的程序中,当一个进程出现问题,咱们会遵循Fail Fast(或者说Let Crash)原则。让这个进程从新启动,这样就能不影响到其它进程。函数式编程
supervisor负责监视和重启进程。而在上级还有sup的sup来监视sup,最终边界就是咱们的Application。函数
不管进程是在同一个应用内,仍是在不一样的应用中,或是不一样机器上,它们通讯的方式都是相同的。工具
mix new foo --supspa
iex --sname foo
iex --sname bar对象
以后咱们就能够在一个进程中执行另外一个进程里定义的函数。 Node.spawn_link(node, fun)进程