我是erlang的新手,而erlang是面向并发的编程,它没有可变的数据结构,这就是为什么它很容易并行化。
但无论如何,共享资源仍然存在,例如,写入同一文件。在这种情况下,erlang如何同步访问两个进程之间的共享资源?
答案 0 :(得分:11)
通常,您可能会执行一个进程,负责访问共享资源。其他进程会向单个管理器进程发送消息,以获取读取或写入共享资源信息的请求。
一些共享资源(例如某些类型的ETS表)可以由多个进程读取,但只有一个进程可以写入。因此,您可以设置一个进程来序列化对表的写入,但让任何人从中读取。