@@ -331,21 +331,15 @@ call(Name, Request, Timeout) ->
331
331
% % Make a cast to a generic server.
332
332
% % -----------------------------------------------------------------
333
333
cast ({global ,Name }, Request ) ->
334
- catch global :send (Name , cast_msg ( Request ) ),
334
+ catch global :send (Name , { '$gen_cast' , Request } ),
335
335
ok ;
336
336
cast ({Name ,Node }= Dest , Request ) when is_atom (Name ), is_atom (Node ) ->
337
- do_cast (Dest , Request );
338
- cast (Dest , Request ) when is_atom (Dest ) ->
339
- do_cast (Dest , Request );
340
- cast (Dest , Request ) when is_pid (Dest ) ->
341
- do_cast (Dest , Request ).
342
-
343
- do_cast (Dest , Request ) ->
344
- do_send (Dest , cast_msg (Request )),
337
+ catch (Dest ! {'$gen_cast' , Request }),
338
+ ok ;
339
+ cast (Dest , Request ) when is_atom (Dest ); is_pid (Dest ) ->
340
+ catch (Dest ! {'$gen_cast' , Request }),
345
341
ok .
346
342
347
- cast_msg (Request ) -> {'$gen_cast' ,Request }.
348
-
349
343
% % -----------------------------------------------------------------
350
344
% % Send a reply to the client.
351
345
% % -----------------------------------------------------------------
@@ -356,13 +350,13 @@ reply({To, Tag}, Reply) ->
356
350
% % Asyncronous broadcast, returns nothing, it's just send'n pray
357
351
% % -----------------------------------------------------------------
358
352
abcast (Name , Request ) when is_atom (Name ) ->
359
- do_abcast ([node () | nodes ()], Name , cast_msg ( Request ) ).
353
+ do_abcast ([node () | nodes ()], Name , { '$gen_cast' , Request } ).
360
354
361
355
abcast (Nodes , Name , Request ) when is_list (Nodes ), is_atom (Name ) ->
362
- do_abcast (Nodes , Name , cast_msg ( Request ) ).
356
+ do_abcast (Nodes , Name , { '$gen_cast' , Request } ).
363
357
364
358
do_abcast ([Node |Nodes ], Name , Msg ) when is_atom (Node ) ->
365
- do_send ({Name ,Node }, Msg ),
359
+ catch ({Name , Node } ! Msg ),
366
360
do_abcast (Nodes , Name , Msg );
367
361
do_abcast ([], _ ,_ ) -> abcast .
368
362
@@ -820,9 +814,6 @@ process_msg(Msg, GS2State = #gs2_state { name = Name, debug = Debug }) ->
820
814
% %% ---------------------------------------------------
821
815
% %% Send/recive functions
822
816
% %% ---------------------------------------------------
823
- do_send (Dest , Msg ) ->
824
- catch erlang :send (Dest , Msg ).
825
-
826
817
do_multi_call (Nodes , Name , Req , infinity ) ->
827
818
Tag = make_ref (),
828
819
Monitors = send_nodes (Nodes , Name , Tag , Req ),
@@ -1403,4 +1394,4 @@ emit_stats(State = #gs2_state{queue = Queue}) ->
1403
1394
1404
1395
stop_stats (State ) ->
1405
1396
rabbit_core_metrics :gen_server2_deleted (self ()),
1406
- State .
1397
+ State .
0 commit comments