Ricerca…


Gestire un pezzo di stato con un agente

Il modo più semplice per avvolgere e accedere a un pezzo di stato è Agent . Il modulo consente di generare un processo che mantiene una struttura di dati arbitraria e consente di inviare messaggi per leggere e aggiornare quella struttura. Grazie a ciò l'accesso alla struttura viene serializzato automaticamente, in quanto il processo gestisce solo un messaggio alla volta.

iex(1)> {:ok, pid} = Agent.start_link(fn -> :initial_value end)
{:ok, #PID<0.62.0>}
iex(2)> Agent.get(pid, &(&1))
:initial_value
iex(3)> Agent.update(pid, fn(value) -> {value, :more_data} end)
:ok
iex(4)> Agent.get(pid, &(&1))
{:initial_value, :more_data}


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow