谢谢大家看这个问题,如果你们能解决我的问题,那将是非常有帮助和感激的。
我用erlang创建了一个gen服务器,用于银行业务,我刚刚创建了一个用于存款和取款的服务器。它运行得非常好,我现在需要的是为取款添加条件。比如,如果要取款的金额将使余额低于100,则必须中止取款并且必须显示诸如“最小余额为100”的显示消息。我正在自学,这是为了我对gen服务器如何在条件下工作的好奇心。这里是退出发生的部分。
deallocate(Available,M) ->
New_state1 = Available - M,
io:format("Amount withdrawn : ~p~n",[M]),
io:format("Total Balance : ~p~n",[New_state1]),
Reply = withdrawn,
{New_state1,Reply}.
从上面的几行可以看出,这是撤销的地方,现在我被困在这里,我可以在哪里和如何添加条件。
任何帮助都是非常感谢和提前感谢,甚至尝试。再见!!
1条答案
按热度按时间hrysbysz1#
我假设你从
handle_call/3
中调用这个deallocate/2
函数,并且将回复返回给调用者,类似于...如果是这种情况,您只需要向客户端返回一条错误消息,而不是
withdrawn
...当然,在客户端,您必须 * 理解 * 错误消息,因此,不要...
......你会......