Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Eshell V5.6.3 (abort with ^G)
(erl@laptop)1> D=dict:new().
{dict,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}}
(erl@laptop)2> D.
{dict,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}}
(erl@laptop)3> dict:store('test', 123, D).
{dict,1,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
{{[],[],[],[],
[[test|123]],
[],[],[],[],[],[],[],[],[],[],[]}}}
(erl@laptop)4> D.
{dict,0,16,16,8,80,48,
{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]},
{{[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}}}
(erl@laptop)6> dict:fetch('test', D).
** exception error: no function clause matching dict:fetch_val(test,[])
cnt(Name, Count) ->
SName = Name,
SCount = Count,
io:format("Before rec. Name: ~p, Count: ~p", [SName, SCount]),
receive
{init, N, C} ->
cnt(N, C);
{inc, C} ->
cnt(SName, SCount - C);
status ->
io:format("Name: ~p, Count: ~p~n", [SName, SCount]),
cnt(SName, SCount);
stop ->
io:format("Proc stop", []);
_ ->
io:format("Default msg", []),
cnt(SName, SCount)
end.
1>S1 = spawn(module, cnt, ["", 0]).
2> S1! {init, «Сид», 100}.
Before rec. Name: «Сид», Count: 100{init,«Сид»,100}
4> S1! {inc, 20}.
Before rec. Name: «Сид», Count: 80{inc,20}
5> S1! status.
Name: «Сид», Count: 80
Введение в gen_server: «Erlybank»