-1

在我们的 Web 应用程序中,我们正在与正在泄漏内存的第三方库进行交互。这会导致我们的应用程序崩溃:(

一种替代方法是在单独的操作系统进程中运行该第三方。

还有其他选择吗?

4

1 回答 1

4

两种方法:

1) 通过 Runtime.exec() 将其作为单独的 OS 进程运行,通过命令行、标准输出或文件进行通信;

或者,

2) 在单独的 JVM 中将其作为服务运行,围绕其库编写外观并通过 TCP/序列化进行通信。

我可能会专注于选项 2),但是当服务停止响应时,有代码自动重启服务(选项 1)。

您还可以尝试更新版本的库,看看是否有帮助。最后,您可以获得代码并尝试分析/修复泄漏。不过,如果它是 C++ 就不容易了。

于 2013-08-05T08:38:13.620 回答