以编程方式检查 ThreadStackSize?
有没有办法以编程方式检查 ThreadStackSize?
我在 Jboss 7 的 jboss.conf 文件中有以下代码。
# Java Additional Parameters
wrapper.java.additional.1=-XX:MaxPermSize=512m
wrapper.java.additional.2=-Dorg.jboss.resolver.warning=true
wrapper.java.additional.3=-Dsun.rmi.dgc.client.gcInterval=3600000
wrapper.java.additional.4=-Dsun.rmi.dgc.server.gcInterval=3600000
wrapper.java.additional.5=-Djboss.modules.system.pkgs=org.jboss.byteman
wrapper.java.additional.6=-Dorg.tanukisoftware.wrapper.WrapperManager.mbean=false
wrapper.java.additional.7=-Dlogging.configuration=file:%JBOSS_HOME%/standalone/configuration/logging.properties
wrapper.java.additional.8=-Djava.util.logging.manager=org.jboss.logmanager.LogManager
wrapper.java.additional.9=-Dorg.jboss.logging.Logger.pluginClass=org.jboss.logging.logmanager.LoggerPluginImpl
**wrapper.java.additional.10=-XX:ThreadStackSize=256k**
有没有办法确认 ThreadStackSize 是否已以编程方式设置为 256k?
Is there a way to check the ThreadStackSize programmatically?
I have the following code in Jboss 7's jboss.conf file.
# Java Additional Parameters
wrapper.java.additional.1=-XX:MaxPermSize=512m
wrapper.java.additional.2=-Dorg.jboss.resolver.warning=true
wrapper.java.additional.3=-Dsun.rmi.dgc.client.gcInterval=3600000
wrapper.java.additional.4=-Dsun.rmi.dgc.server.gcInterval=3600000
wrapper.java.additional.5=-Djboss.modules.system.pkgs=org.jboss.byteman
wrapper.java.additional.6=-Dorg.tanukisoftware.wrapper.WrapperManager.mbean=false
wrapper.java.additional.7=-Dlogging.configuration=file:%JBOSS_HOME%/standalone/configuration/logging.properties
wrapper.java.additional.8=-Djava.util.logging.manager=org.jboss.logmanager.LogManager
wrapper.java.additional.9=-Dorg.jboss.logging.Logger.pluginClass=org.jboss.logging.logmanager.LoggerPluginImpl
**wrapper.java.additional.10=-XX:ThreadStackSize=256k**
Is there a way to confirm if the ThreadStackSize has been set to 256k programmatically?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
问题在于 -XX 参数是特定于实现的,因此核心 Java 类无法直接将这些信息作为简单的
getMaxStackSize()
公开。java.lang.management 包中有很多有用的指标,例如
MemoryPoolMXBean
。我还没有尝试特别寻找堆栈大小,但如果您深入挖掘,您可能会找到它。The problem is that the -XX args are implementation specific, so the core Java classes can't expose that information directly as a simple
getMaxStackSize()
.There are a lot of useful metrics in the
java.lang.management
package, such as theMemoryPoolMXBean
. I haven't tried looking for stack size in particular, but if you dig around you might find it.请阅读此处:在运行时更新 java 线程的堆栈大小
你也许可以尝试抓住
stackSize
变量,看看这是否会给您带来任何有用的东西。保持警惕:Have a read here: Update a java thread's stack size at runtime
You could probably try to grab the
stackSize
variable using reflection and see if that gives you anything useful. Be wary: