ソースを参照

refactor: use `emqx_pool:async_submit` to avoid excessive spawning

Thales Macedo Garitezi 2 年 前
コミット
3b1e436d3f
1 ファイル変更1 行追加1 行削除
  1. 1 1
      apps/emqx_resource/src/emqx_resource_buffer_worker.erl

+ 1 - 1
apps/emqx_resource/src/emqx_resource_buffer_worker.erl

@@ -824,7 +824,7 @@ reply_dropped(_ReplyTo = {Fn, Args, #{reply_dropped := true}}, Result) when
     is_function(Fn), is_list(Args)
     is_function(Fn), is_list(Args)
 ->
 ->
     %% We want to avoid bumping metrics inside the buffer worker, since it's costly.
     %% We want to avoid bumping metrics inside the buffer worker, since it's costly.
-    spawn(fun() -> erlang:apply(Fn, Args ++ [Result]) end),
+    emqx_pool:async_submit(Fn, Args ++ [Result]),
     ok;
     ok;
 reply_dropped(_ReplyTo, _Result) ->
 reply_dropped(_ReplyTo, _Result) ->
     ok.
     ok.