Elixir 中监督者(Supervisor)的使用与进程管理
1. 准备工作
在开始使用监督者(Supervisor)之前,需要对待办事项缓存(to-do cache)进行一些更改:
- 注册缓存进程 :通过注册缓存进程,可以在不知道其进程 ID(PID)的情况下与其进行交互。
- 创建链接 :在启动待办事项缓存进程时,需要创建一个链接。使用 GenServer.start_link 代替 GenServer.start 来创建链接。同时,将 Todo.Cache 对应的接口函数重命名为 start_link 。
- 修改 start_link 函数 :让 start_link 函数接受一个参数并忽略它,这样可以简化启动受监督进程的过程。
以下是修改后的 Todo.Cache 模块代码:
defmodule Todo.Cache do
use GenServer
def start_link(_) do
GenServer.start_link(__MODULE__, nil, name: __MODULE__)
end
def server_process(todo_list_name) do
GenServer.call(__MO
超级会员免费看
订阅专栏 解锁全文
10

被折叠的 条评论
为什么被折叠?



