问题描述
我看到App ENV选项可以通过java buildpack中的内存计算器为Cloud Foundry应用程序配置“ -stackThreads = 250”。这些stackThreads是什么以及它的真正作用。通过更改此值如何影响应用程序。有些人将“堆栈线程”和“线程堆栈”一词互换使用。是这样还是不同(尽管我了解线程堆栈的定义)
cf set-env我的应用程序JBP_CONfig_OPEN_JDK_JRE'{jre:{版本:11. +},memory_calculator:{stack_threads:25}}'
解决方法
-stackThreads
是Buildpack内存计算器的参数,而不是JVM的参数。它是估计由于线程堆栈而导致的内存使用量时将使用的并发线程数。线程堆栈(广义上)是每个线程中分配给该堆栈的内存量,由-Xss
选项设置。通常,如果线程堆栈更大或正在运行更多线程,则总体内存使用量将会增加。
据我所知,JVM本身没有-stackThreads
选项,因此在运行应用程序时在JVM上对其进行设置将无效。实际上,在命令行中可能会将其视为错误。我认为“堆栈线程”在Java中甚至都不是有意义的术语。