From 111380bf25ec957b78c7743a0ebbb4949924145f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BB=98=E5=BC=BA?= Date: Sun, 4 Aug 2019 19:03:05 +0800 Subject: [PATCH] fix #11 --- src/ecpool_worker.erl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/ecpool_worker.erl b/src/ecpool_worker.erl index 2b1aeb9b5..19ae3bd97 100644 --- a/src/ecpool_worker.erl +++ b/src/ecpool_worker.erl @@ -137,9 +137,11 @@ handle_info(reconnect, State = #state{opts = Opts, on_reconnect = OnReconnect}) case catch connect(State) of {ok, Client} -> handle_reconnect(Client, OnReconnect), - {noreply, State#state{client = Client}}; + erlang:link(Client), + {noreply, State#state{client = Client, supervisees = [Client]}}; {{ok, Client}, #{supervisees := SupPids} = _SupOpts} -> handle_reconnect(Client, OnReconnect), + [erlang:link(P) || P <- SupPids], {noreply, State#state{client = Client, supervisees = SupPids}}; {Err, _Reason} when Err =:= error orelse Err =:= 'EXIT' -> reconnect(proplists:get_value(auto_reconnect, Opts), State)