我正在开发一个应用程序,客户端(用户)可以控制创建新线程并杀死它们。该应用程序基于 Java。
在其中一种情况下,用户创建多个线程并杀死它们并创建新线程并继续。一段时间后,OutofMemoryException 弹出。我认为这与线程堆栈问题有关。所以我将线程堆栈 XSS 从 1024KB 减少到 512KB,并将 Java 堆大小从 Xms 256mb XmX 1024mb 减少到 Xms 256mb Xmx 512mb。
我还使用 yourkit 对应用程序进行了内存分析,只是为了查看它是否从堆大小溢出。但这似乎没问题..线程被创建并杀死了。
这是 8GB RAM Windows 7 机器
我想知道,还有什么可能导致这个异常?