【问题标题】:What are Stack threads in Java?Java中的堆栈线程是什么?
【发布时间】:2020-10-07 07:35:11
【问题描述】:

我看到 App ENV 选项通过内存计算器在 java buildpack 中为云代工应用程序配置“-stackThreads=250”。这些 stackThreads 是什么以及它的真正作用。它如何通过更改此值来影响应用程序。有些人互换使用“堆栈线程”和“线程堆栈”这个词。是这样还是不同(虽然我理解线程堆栈的定义)

cf set-env my-application JBP_CONFIG_OPEN_JDK_JRE '{ jre: { version: 11.+ }, memory_calculator: { stack_threads: 25 } }'

【问题讨论】:

    标签: java multithreading cloud cloud-foundry


    【解决方案1】:

    -stackThreads 是 Buildpack 内存计算器的参数,而不是 JVM。这是在估计由于线程堆栈而导致的内存使用时将使用的并发线程数。线程堆栈(广义上)是分配给每个线程中堆栈的内存量,由-Xss 选项设置。一般来说,如果线程堆栈更大,或者运行的线程更多,整体内存使用会增加。

    据我所知,JVM本身是没有-stackThreads选项的,所以在运行应用的时候在JVM上设置是没有效果的。事实上,它很可能在命令行中被视为错误。我认为“堆栈线程”在 Java 中甚至不是一个有意义的术语。

    【讨论】:

    • 有道理...我已经更正了 qns...它应该是 APP ENV 而不是 JAVA_OPTS。然后我认为 -stackThreads:250 我认为微服务太多了。
    猜你喜欢
    • 2011-12-28
    • 1970-01-01
    • 2016-02-15
    • 2014-10-16
    • 1970-01-01
    • 2012-04-21
    • 2014-08-09
    • 1970-01-01
    • 2011-11-09
    相关资源
    最近更新 更多