Я пытаюсь отправить сообщение от одного процесса, который я породил другому для назначения, я чувствую, что я здесь очень близок, но я думаю, что мой синтаксис немного отклонен:
-module(assignment6).
-export([start/1, process1/2, process2/0, send_message/2]).
process1(N, Pid) ->
Message = "This is the original Message",
if
N == 1 ->
timer:sleep(3000),
send_message(Pid, Message);
N > 1 ->
timer:sleep(3000),
send_message(Pid, Message),
process1(N-1, Pid);
true ->
io:fwrite("Negative/0, Int/Floating-Point Numbers not allowed")
end.
process2() ->
recieve
Message ->
io:fwrite(Message),
io:fwrite("~n");
end.
send_message(Pid, Message) ->
Pid ! {Message}.
start(N) ->
Pid = spawn(assignment6, process2, []),
spawn(assignment6, process1, [N, Pid]).
Целью этой программы является то, что сообщение будет распечатано N раз при запуске функции, но будет достаточно задержано, чтобы я мог выполнить горячую замену формулировки сообщения в середине цикла.Я просто не могу получить сообщение на process2
для распечатки.