gen-server

    6熱度

    3回答

    主要我想知道是否可以在分佈式erlang安裝程序的消息中發送函數。 機器1 F1 = Fun()-> hey end, gen_server:call(on_other_machine,F1) 上機2 handler_call(Function,From,State) -> {reply,Function(),State) 有意義嗎?

    2熱度

    3回答

    我目前正在學習Erlang的一個合理的剪輯,但有一個關於與主管gen_server的問題。如果一個gen_server進程崩潰並且相應由一個主管重新啓動,它會收到一個新的pid。現在,如果我希望其他進程通過Pid引用該進程,該怎麼辦?在這些過程中'更新'Pid有哪些好習慣方法? 作爲一個具有一些實際應用的練習,我正在寫一個鎖服務器,客戶端可以用任意鍵請求鎖。理想情況下,我希望有一個單獨的進程來處理

    2熱度

    2回答

    我有gen_server: start(UserName) -> case gen_server:start({global, UserName}, player, [], []) of {ok, _} -> io:format("Player: " ++ UserName ++ " started"); {error, Error} -> E

    1熱度

    1回答

    它繼續previos question 我有gen_server: start(UserName) -> case gen_server:start({global, UserName}, player, [], []) of {ok, _} -> io:format("Player: " ++ UserName ++ " started"); {erro

    11熱度

    1回答

    是否可以獲取gen_server進程的當前狀態(推測可能是通過發送某個系統消息)?調試時可能很有用。 當然,我可以添加返回當前狀態handle_call消息: get_state(Server) -> gen_server:call(Server, '$get_state'). %% in every gen_server I want to debug ... handle_call('

    2熱度

    1回答

    當從上級開始gen_server的(它本身是由應用程序啓動)這個問題我已經當gen_server的start_link不返回{ok, ...}但{error, Reason}唯一的錯誤消息,我看到的是: =INFO REPORT==== 20-Jan-2011::13:14:43 === application: foo exited: {shutdown,{foo_app,s

    1熱度

    1回答

    我在我的erlang代碼中有gen_server。而當我嘗試運行它後,下面的代碼不起作用。例如: ....... my_server:start_link(). io:format("AAAAAAAAAAAAAAAAAAA"), ..... 現在io:format/1不起作用。如果我運行gen_server與產卵: ...... spawn(fun() -> my_server:sta

    34熱度

    4回答

    我想啓動一個gen_server,另外每分鐘會執行一個動作。 什麼是最好的安排方式?

    3熱度

    2回答

    我是一個erlang的初學者,我編寫了一個基本的gen server程序,如下所示,我想知道如何測試服務器,以便我可以知道它的效果。 -module(gen_server_test). -behaviour(gen_server). -export([start_link/0]). -export([alloc/0, free/1]). -export([init/1, handle_ca

    7熱度

    1回答

    我使用erlang作爲服務之間的橋樑,並且我在想,人們對於處理連接斷開有什麼建議? 我從本地文件獲取輸入並將它們輸出到AMQP,並且可以想象AMQP代理可能會關閉。對於這種情況,我想繼續重試連接到AMQP服務器,但我不想用這些連接嘗試掛鉤CPU。我的意圖是讓AMQP代碼重新啓動。這種「黑客」是不是基本上繞過了快速失敗並讓erlang處理它的目的?更一般地說,erlang監督者行爲是否應該用於處理連