gen-server

    2熱度

    1回答

    我有幾個gen_server工作人員定期向硬件傳感器請求一些信息。傳感器可能暫時失效,這是正常的。如果傳感器失敗,工人將終止併發生異常。 所有的工人都是從simple_one_to_one策略中派生出來的。此外,我有一個控制gen_server,它可以啓動和停止工作人員,也可以收到'DOWN'消息。 所以現在我有兩個問題: 如果工人被監督者的狀態丟失,這是不能接受我重新啓動。我需要用相同的狀態重新

    1熱度

    2回答

    編輯:下面。 爲什麼我的受監控的gen_server如此快速地關閉? 我將給出這些組織名稱,以使其更清楚我的應用程序中需要的命令鏈:首先,我將以「assembly_line_worker」開頭,然後再將「marketing_specialist」添加到我的監督中樹... ceo_supervisor.erl -module(ceo_supervisor). -behaviour(supervis

    9熱度

    1回答

    我很新的OTP,我試圖創建簡單的例子就明白了上司的行爲: 下面是簡單的增量服務器 -module(inc_serv). -behaviour(gen_server). -export([ start/0, inc/1, stop/0 ]). -export([ init/1, handle_call/3, terminate/2 ]). start() -> gen_serv

    2熱度

    1回答

    我目前正在測試一下我的推送通知模塊。 當設備令牌是無效的,它斷開...... 根據Apple push notification developer documentation我應該只是蘋果推送服務器斷開連接之前得到一個錯誤響應包... 的事情是我得到斷開,但在此之前,我沒有在Socket上得到任何信息,並且我需要知道推送是否因推送格式不正確(所以我可以修復該錯誤)或無效的設備令牌(因此我可以將其

    2熱度

    2回答

    的handle_call功能gen_server是: Module:handle_call(Request, From, State) -> Result 但我遇到一個handle_call功能是這樣的: handle_call(info, _From, #yuv{decoder = undefined} = State) -> {reply, [], State}; handl

    3熱度

    2回答

    在編寫代碼時,我問自己應該使用哪種類型的消息call,應該使用哪種類型的消息info? 在這個問題下面,還有另一個長期懷疑info, cast, call消息之間是否有優先權區別?這三種消息是否共享相同的隊列?

    4熱度

    4回答

    我有一個gen_server模塊,在客戶端進程發送數據時將數據記錄到文件中。當兩個客戶端進程同時向這個模塊發送數據時會發生什麼?文件操作是否會相互衝突?這裏erlang documentation令人沮喪不清。

    4熱度

    2回答

    我的init()函數創建UDP套接字,並返回套接字值作爲一個國家。 start() -> {ok, ServerPid} = gen_server:start_link(?MODULE, [], []). %%% gen_server API init([]) -> {ok, Socket} = gen_udp:open(8888, [list, {active,f

    5熱度

    1回答

    TLDR:是否存在可自動重新連接到有時會失敗的TCP服務器的可重用代碼? 我正在寫一個服務器應用程序 - 稱之爲hal - 這也開闢了一些TCP連接到其他服務器 - 其中xbmc。我原本是這樣寫的,所以當xbmc失敗時,xbmc erlang進程將停止,並隨後由其主管重新啓動。 顯然,這不是在erlang中執行持久性TCP連接的好方法。首先,它並不是真正的工作:當xbmc失敗時,這個過程會很快重新

    2熱度

    2回答

    我有一個Erlang應用程序需要一點資源,以保持在一個節點上。我正在使gen_servers從一個進程移動到另一個進程 - 這相當容易。我處於最後一個障礙:獲取創建這些gen_servers的工廠進程,以在遠程節點上產生它們,而不是本地進程。 start_link的默認行爲顯然只在本地啓動,但我沒有看到任何更改該選項的選項。 看來,我將不得不對解決方案進行創新,並希望看看有沒有人有過這樣的成功之道