现在的位置: 首页 > 综合 > 正文

进程

2018年06月08日 ⁄ 综合 ⁄ 共 814字 ⁄ 字号 评论关闭
文章目录
loop()->
	receive 
		{rectangle,Width,Ht}->
			io:format("area of rectangle is ~p~n",[ Width*Ht]),
		    loop();
        {circle,R}->
           io:format("area of circle is ~p~n",[ R*R*3.1415926]),
		   loop();
		Other->
			io:format("area of circle is ~p~n",[Other]),
		    loop()
	end.
Pid=spawn(fun area_server:loop/0).

书上滴 进程滴应用  创建一个进程对loop求值

 Pid!{self(),{rectangle,6,10}}.

loop()->
	receive 
		{Form,{rectangle,Width,Ht}}->
			Form!Width*Ht,
			%io:format("area of rectangle is ~p~n",[ Width*Ht]),
		    loop();
        {From,{circle,R}}->
           io:format("area of circle is ~p~n",[ R*R*3.1415926]),
		   loop();
		Other->
			io:format("area of circle is ~p~n",[Other]),
		    loop()
	end.

带超时滴  receive

         

loop()->
	receive 
		{Form,{rectangle,Width,Ht}}->
			Form!Width*Ht,
			%io:format("area of rectangle is ~p~n",[ Width*Ht]),
		    loop();
        {From,{circle,R}}->
           io:format("area of circle is ~p~n",[ R*R*3.1415926]),
		   loop();
		Other->
			io:format("area of circle is ~p~n",[Other]),
		    loop()
	after 0->
			true
	end.

抱歉!评论已关闭.