Ich rufe elixir genserver von der Handle-Info-Funktion in GenServer an, um die Telefonnummer hinzuzufügen, die den Form-Client erhält. Sobald handle_call aufgerufen wird, wird der Besitzerprozess abgestürzt [timeout]. Bitte helfen.
Eine ETS wird global erstellt, um Werte einzufügen, bevor eine der unten genannten Funktionen aufgerufen wird.
%Vor%Fehler:
%Vor% Sie können sich nicht innerhalb eines Anrufs anrufen, wie in Ihrem handle_info-Aufruf von add
, der einen Rückruf auf Ihrem gen_server ausführt. Da alle Operationen in einem gen_server sequentiell ablaufen, blockieren Sie sich selbst. Die Lösung sollte darin bestehen, eine einfache private add
-Funktion für das Modul zu verwenden und sowohl handle_info
als auch handle_call({:add
delegate darauf zu haben.
Tags und Links elixir gen-server