Recherche…


Gérer un morceau d'état avec un agent

Le moyen le plus simple d’emballer et d’accéder à un état est l’ Agent . Le module permet de générer un processus qui conserve une structure de données arbitraire et permet d'envoyer des messages pour lire et mettre à jour cette structure. Grâce à cela, l'accès à la structure est automatiquement sérialisé, car le processus ne gère qu'un seul message à la fois.

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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow