Erlang注册进程名称-tut16.erl
生活随笔
收集整理的這篇文章主要介紹了
Erlang注册进程名称-tut16.erl
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
作 w3cschool erlang 的練習
---------
1 -module(tut16). 2 3 -export([start/0, ping/1, pong/0]). 4 5 %% Erlang 注冊進程名稱 6 7 %% ping 進程必須通過某種途徑 獲得 pong 進程的進程標識符后 8 %% 才能將消息發(fā)送給 pong 進程 9 10 %% Erlang 提供了 為每個進程提供一個名稱綁定的機制, 11 %% 這樣進程間通信就可以通過進程名來實現(xiàn), 而不需要知道進程的進程標識符了. 12 %% 為每個進程注冊一個名稱需要用到內(nèi)置函數(shù) register : 13 %% register(some_atom, Pid) 14 15 ping(0) -> 16 pong ! finished, 17 io:format("ping finished~n", []); 18 ping(N) -> 19 pong ! {ping, self()}, 20 receive 21 pong -> 22 io:format("Ping received pong~n", []) 23 end, 24 ping(N - 1). 25 26 pong() -> 27 receive 28 finished -> 29 io:format("pong finished~n", []); 30 {ping, Ping_PID} -> 31 io:format("Pong received ping~n", []), 32 Ping_PID ! pong, 33 pong() 34 end. 35 36 start() -> 37 register(pong, spawn(tut16, pong, [])), 38 spawn(tut16, ping, [3]). View Code?
?
--------- THE END ---------
轉(zhuǎn)載于:https://www.cnblogs.com/shadow-abyss/p/11179724.html
總結(jié)
以上是生活随笔為你收集整理的Erlang注册进程名称-tut16.erl的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NO.1_python_scrapy组成
- 下一篇: 海康、大华设备搜索大概实现原理