From 632c9f4e1f4b7710bc2d5ccadf47d90a911c5657 Mon Sep 17 00:00:00 2001 From: SisMaker <1713699517@qq.com> Date: Sun, 2 Jul 2023 02:09:38 +0800 Subject: [PATCH] =?UTF-8?q?ft:=20=E7=9D=A1=E7=9C=A0=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/gen_ipc.erl | 16 ++++++++-------- src/gen_mpp.erl | 12 ++++++------ src/gen_srv.erl | 12 ++++++------ 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/src/gen_ipc.erl b/src/gen_ipc.erl index 0367c46..340c4a7 100644 --- a/src/gen_ipc.erl +++ b/src/gen_ipc.erl @@ -42,7 +42,7 @@ , format_status/2 %% Internal callbacks - , wakeupFromHib/12 + , wakeupFromHib/11 %% logger callback , format_log/1 , format_log/2 @@ -448,9 +448,9 @@ loopEntry(Parent, Debug, Module, Name, HibernateAfterTimeout, CurStatus, CurStat system_continue(Parent, Debug, {Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, IsHib}) -> if IsHib -> - proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib]); + proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug]); true -> - receiveIng(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib) + receiveIng(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, false) end. system_terminate(Reason, Parent, Debug, {Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, _IsHib}) -> @@ -1098,18 +1098,18 @@ listify(Item) -> [Item]. %%%========================================================================== %%% Internal callbacks -wakeupFromHib(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib) -> +wakeupFromHib(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug) -> %% 这是一条新消息,唤醒了我们,因此我们必须立即收到它 - receiveIng(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib). + receiveIng(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, true). %%%========================================================================== %% Entry point for system_continue/3 reLoopEntry(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib) -> if IsHib -> - proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib]); + proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug]); true -> - receiveIng(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib) + receiveIng(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, false) end. %% 接收新的消息 @@ -1149,7 +1149,7 @@ receiveIng(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postpo end after HibernateAfterTimeout -> - proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, IsHib]) + proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug]) end. matchCallMsg(Parent, Name, Module, HibernateAfterTimeout, IsEnter, EpmHers, Postponed, Timers, CurStatus, CurState, Debug, From, Request) -> diff --git a/src/gen_mpp.erl b/src/gen_mpp.erl index 22b5d09..cab137b 100644 --- a/src/gen_mpp.erl +++ b/src/gen_mpp.erl @@ -33,7 +33,7 @@ , format_status/2 %% Internal callbacks - , wakeupFromHib/8 + , wakeupFromHib/7 %% logger callback , format_log/1, format_log/2, print_event/3 @@ -258,9 +258,9 @@ enter_loop(Module, State, Opts, ServerName, Actions) -> loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, #{}, State, listify(Actions)). %%% Internal callbacks -wakeupFromHib(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib) -> +wakeupFromHib(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState) -> %% 这是一条新消息,唤醒了我们,因此我们必须立即收到它 - receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib). + receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, true). loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, Actions) -> case doParseAL(Actions, Name, Debug, false, false, Timers) of @@ -273,7 +273,7 @@ loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, _ -> case IsHib of true -> - proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, NewDebug, NewTimers, CurState, IsHib]); + proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, NewDebug, NewTimers, CurState]); _ -> receiveIng(Parent, Name, Module, HibernateAfterTimeout, NewDebug, NewTimers, CurState, false) end @@ -287,9 +287,9 @@ loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, system_continue(Parent, Debug, {Name, Module, HibernateAfterTimeout, Timers, CurState, IsHib}) -> case IsHib of true -> - proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib]); + proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState]); _ -> - receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib) + receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, false) end. -spec system_terminate(_, _, _, [_]) -> no_return(). diff --git a/src/gen_srv.erl b/src/gen_srv.erl index 0a99374..2880aeb 100644 --- a/src/gen_srv.erl +++ b/src/gen_srv.erl @@ -33,7 +33,7 @@ , format_status/2 %% Internal callbacks - , wakeupFromHib/8 + , wakeupFromHib/7 %% logger callback , format_log/1, format_log/2, print_event/3 @@ -261,9 +261,9 @@ enter_loop(Module, State, Opts, ServerName, Actions) -> loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, #{}, State, listify(Actions)). %%% Internal callbacks -wakeupFromHib(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib) -> +wakeupFromHib(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState) -> %% 这是一条新消息,唤醒了我们,因此我们必须立即收到它 - receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib). + receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, true). loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, Actions) -> case doParseAL(Actions, Name, Debug, false, false, Timers) of @@ -276,7 +276,7 @@ loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, _ -> case IsHib of true -> - proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, NewDebug, NewTimers, CurState, IsHib]); + proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, NewDebug, NewTimers, CurState]); _ -> receiveIng(Parent, Name, Module, HibernateAfterTimeout, NewDebug, NewTimers, CurState, false) end @@ -290,9 +290,9 @@ loopEntry(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, system_continue(Parent, Debug, {Name, Module, HibernateAfterTimeout, Timers, CurState, IsHib}) -> case IsHib of true -> - proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib]); + proc_lib:hibernate(?MODULE, wakeupFromHib, [Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState]); _ -> - receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, IsHib) + receiveIng(Parent, Name, Module, HibernateAfterTimeout, Debug, Timers, CurState, false) end. -spec system_terminate(_, _, _, [_]) -> no_return().