-module(callCNode). -compile(export_all). for(M, N) when M < N -> test3(), timer:sleep(100), for(M, N); for(_, _) -> ok. test() -> testSetCNode('c1@127.0.0.1'), for(1, 2). test1() -> %% erlang:c(mochiglobal), mochiglobal:put('cnode', 'c1@127.0.0.1'). test2() -> mochiglobal:get('cnode'). test3() -> Ret = "asdfasdf", case Ret of '' -> ok; true -> sendMessToCNode ! {call, 'bar', 65}; _ -> sendMessToCNode ! {call, 'bar', 65} end. loop(CallID) -> receive {call, FuncName, Args} -> case net_kernel:connect(CallID) of true -> {any, CallID} ! {call, self(), {FuncName, Args}}, io:format("send ok call log ~p,~p,~p", [CallID, FuncName, Args]); _ -> io:format("connect server fail!") end, loop(CallID); stop -> close; {'EXIT', CallID, Reason} -> exit({port_terminated, Reason}) end. testSetCNode(CNode) -> net_kernel:connect(CNode), Pid = spawn(fun() -> callCNode:loop(CNode) end), register(sendMessToCNode, Pid). %%注册进程名字 testLog() -> RET = "test", FFF = "dsafsadf", lager:start(), io:format("Some message"), io:format("Some message ~p,,~p~n", [RET, FFF]), io:format("Some message"), lager:notice("Some message"), io:format("Some message"), io:format("Some message"), lager:emergency("Some message").