-produce(#state{consumers=ConsumersSet, stats_state=StatsState1}=State) ->
- StatsState2 = beam_stats_state:update(StatsState1),
- Stats = beam_stats_state:export(StatsState2),
+produce_async(#state{}=State) ->
+ produce(State, fun beam_stats_consumer:consume_async/2).
+
+-spec produce(state(), fun((pid(), term()) -> ok)) ->
+ state().
+produce(
+ #state
+ { consumers = ConsumersSet
+ , deltas_server = DeltasServer
+ }=State,
+ MsgSendFun
+) ->
+ Stats = beam_stats:collect(DeltasServer),