最近,我注意到我的程序具有很大的性能下降,因为版本低于5的gcc的标准库实现产生list::size()了O(n)。
我正在使用CentOS 7.2,其默认gcc版本为4.8.5。因此,我安装了scl和devtoolset-7,并重建了程序。但是,我发现list::size()程序中仍然是一个O(n)方法,即使我显式设置_GLIBCXX_USE_CXX11_ABI为1。
为什么?这很奇怪。
我的程序抛出以下异常:
java.lang.OutOfMemoryError: unable to create new native thread
Run Code Online (Sandbox Code Playgroud)
但是当我添加-XX:+HeapDumpOnOutOfMemoryError到jvm参数时,但似乎jvm没有转储堆,因为我从未找到任何.hprof文件。为什么?