gpt4 book ai didi

c++ - 避免服务器因 ".so"故障而崩溃

转载 作者:行者123 更新时间:2023-11-28 07:15:08 24 4
gpt4 key购买 nike

我正在使用一个 C++ 开源代码,它被制作为“.so”并放置在服务器中。在 Java 客户端中,我将通过 JNI 包将其称为“.so”。

现在我的问题是,我正在使用的“开源 C++”代码不处理任何错误。因此,如果 C++ 部分出现问题,服务器就会崩溃。因此,在我再次启动服务器之前,我无法使用我的应用程序。

我的问题是,有什么方法可以阻止服务器因“.so”(C++ 代码)失败而崩溃吗?现在我也无法修改开源 C++ 代码,因为我的时间很紧。

有人可以为我提供一些想法或解决方法来阻止服务器因“.so”失败而崩溃吗?

最佳答案

我假设你得到了 SIGSEG 或类似的东西。

您可以 try catch 信号并进行一些特殊处理。我不推荐这样做,因为很难让代码干净地退出(内存泄漏等)。

更好的方法是启动一个新进程并在那里运行“.so”。这样,无论代码变得多么糟糕,它都是一个单独的过程。如果它崩溃了,你的主服务器会很好,只需要处理一个破损的管道(关闭的文件/通信 channel )。

关于c++ - 避免服务器因 ".so"故障而崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20359893/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com