GNU/Linux • xterm • bash 1 views

Code: -module(contador). -behaviour(gen_server).

%% API -export([start_link/0, incrementar/0, reiniciar/0, obtener/0]). %% Callbacks -export([init/1, handle_call/3, handle_cast/2]).

%%% API

start_link() ->

gen_server:start_link({local, ?MODULE}, ?MODULE, 0, []).

incrementar() ->

gen_server:call(?MODULE, incrementar).

obtener() ->

gen_server:call(?MODULE, obtener).

reiniciar() ->

gen_server:cast(?MODULE, reiniciar).

%%% Callbacks

init(EstadoInicial) ->

{ok, EstadoInicial}.

handle_call(incrementar, _From, Estado) ->

NuevoEstado = Estado + 1,
{reply, NuevoEstado, NuevoEstado};

handle_call(obtener, _From, Estado) ->

{reply, Estado, Estado}.

handle_cast(reiniciar, _Estado) ->

{noreply, 0}.

More recordings by Pabblin

Hello World 0:38

by Pabblin

PLyF_EjerciciosErl_1-3 1:19

by Pabblin

10 Erlang Programs 3:28

by Pabblin