我正在linux中使用'dlopen'插件系統。這是一個在插件之間傳輸數據(JSON)的中央應用程序。 我們可以使用try-catch子句處理拋出的異常。我的問題是關於終止程序的錯誤,如分段錯誤。如何防止終止整個應用程序的插件故障中的一個?如何防止插件中的崩潰影響主程序(dlopen)
我可以用叉子做點什麼嗎?我從來沒有使用叉,我不知道如果我可以在分叉進程和主進程之間傳輸數據? 或者我不能使用dlopen fr這樣的事情,我必須使用另一種方法?
謝謝。
我正在linux中使用'dlopen'插件系統。這是一個在插件之間傳輸數據(JSON)的中央應用程序。 我們可以使用try-catch子句處理拋出的異常。我的問題是關於終止程序的錯誤,如分段錯誤。如何防止終止整個應用程序的插件故障中的一個?如何防止插件中的崩潰影響主程序(dlopen)
我可以用叉子做點什麼嗎?我從來沒有使用叉,我不知道如果我可以在分叉進程和主進程之間傳輸數據? 或者我不能使用dlopen fr這樣的事情,我必須使用另一種方法?
謝謝。
如果可以的話,您不能輕鬆分離信號處理。信號處理程序是全過程的,所以即使您使用'sigsetjmp/siglongjmp'來處理代碼中的SIGSEGV,例如,您仍然會影響整個過程 - 同時讓整個過程影響您的代碼。 –