diff options
author | Björn Gustavsson <[email protected]> | 2010-03-08 14:42:03 +0100 |
---|---|---|
committer | Björn Gustavsson <[email protected]> | 2010-03-08 15:36:00 +0100 |
commit | dff8572b12a00155e2cf6f21677af6dd9a3ffeb6 (patch) | |
tree | e18eefe6f1435ad100f4a25f5e83000c85c58f8c /lib/sasl/src/overload.erl | |
parent | dfd80f7cea795bfb3a35eaea2c0bc98960002aa2 (diff) | |
download | otp-dff8572b12a00155e2cf6f21677af6dd9a3ffeb6.tar.gz otp-dff8572b12a00155e2cf6f21677af6dd9a3ffeb6.tar.bz2 otp-dff8572b12a00155e2cf6f21677af6dd9a3ffeb6.zip |
sasl: Use gen_server:call/3 with infinity timeout
gen_server:call/2,3 now sets up a monitor to make sure that
it will be noticed if the called process dies. Therefore,
there is almost never a good reason to use gen_server:call/2
with its default 5 seconds timeout. Use gen_server:call/3
with the 'infinity' timeout instead.
To make sure we use the 'infinity' timeout every time,
wrap the to call gen_server:call/3 in a local call/1 function
in each module.
Diffstat (limited to 'lib/sasl/src/overload.erl')
-rw-r--r-- | lib/sasl/src/overload.erl | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/lib/sasl/src/overload.erl b/lib/sasl/src/overload.erl index 3a9a51e8bf..0deca868be 100644 --- a/lib/sasl/src/overload.erl +++ b/lib/sasl/src/overload.erl @@ -71,7 +71,7 @@ init([]) -> %% establish a call. %% Returns: accept | reject %%----------------------------------------------------------------- -request() -> gen_server:call(overload, request). +request() -> call(request). %%----------------------------------------------------------------- %% Func: set_config_data/2 @@ -82,13 +82,19 @@ request() -> gen_server:call(overload, request). %% documented at all. %%----------------------------------------------------------------- set_config_data(MaxIntensity, Weight) -> - gen_server:call(overload, {set_config_data, MaxIntensity, Weight}). + call({set_config_data, MaxIntensity, Weight}). %%----------------------------------------------------------------- %% Func: get_overload_info/0 %% Returns: A list of tagged items: TotalIntensity, AcceptIntensity, %% MaxIntensity, Weight, TotalRequests, AcceptedRequests. %%----------------------------------------------------------------- -get_overload_info() -> gen_server:call(overload, get_overload_info). +get_overload_info() -> call(get_overload_info). + +%%----------------------------------------------------------------- +%% call(Request) -> Term +%%----------------------------------------------------------------- +call(Req) -> + gen_server:call(overload, Req, infinity). %%%----------------------------------------------------------------- %%% Callback functions from gen_server |