2011-05-08 39 views
1

sasl崩潰中的消息字段是否報告消息郵箱的當前內容,即未收到的消息?在Erlang SASL崩潰報告中,「messages:」字段的含義究竟是什麼?

或者它是郵件歷史,最後收到的郵件?

如果顯示收到的消息按照什麼順序顯示?

=CRASH REPORT==== 8-May-2011::09:00:38 === 
    crasher: 
    initial call: most_msgs:-connect/4-fun-0-/0 
    pid: <0.181.0> 
    registered_name: [] 
    exception exit: {tx_succ_timeout,mcm} 
     in function most_msgs:wait_tx_succ/4 
    ancestors: [<0.178.0>,<0.177.0>,<0.175.0>,<0.174.0>,<0.173.0>,<0.172.0>] 
    messages: [{send,{most_mcm,{most_fdh,mcm,undefined,undefined,968,6,255}, 
            80,set,undefined,undefined, 
            <<244,239,62,2>>}}, 
        {recv,{most_icm,768,status,<<2>>}}, 
        {recv,{most_fifo_status,mcm,0,net_off,1}}, 
        {send,{most_mcm,{most_fdh,mcm,undefined,undefined,968,6,255}, 
            80,set,undefined,undefined, 
            <<244,223,62,128>>}}, 
+0

使用此「erlang:process_info(list_to_pid(PID),message_queue_len)」。在運行時檢查郵箱是否過載了未收到的郵件..我認爲它們是崩潰前郵箱中的內容。 – Arunmu 2011-05-08 11:52:59

回答

0

它是進程崩潰時消息隊列中的消息。

+0

有沒有參考?我也有預感,但沒有發現它是如何記錄的。 – 2011-05-09 10:02:26

+0

只有經驗和邏輯,因爲它不能真正成爲別的。如果爲所有流程保留處理後的消息,將會產生嚴重的內存壓力。 – Lukas 2011-05-10 17:39:49