gpt4 book ai didi

optimization - genStrAsCharArray 优化的好处

转载 作者:行者123 更新时间:2023-12-03 16:56:12 24 4
gpt4 key购买 nike

我正在研究可用于优化 JBoss 5.1.0 性能的选项。

我正在查看的选项之一是设置 genStrAsCharArraytrue<JBOSS_HOME>/server/<PROFILE>/deployers/jbossweb.deployer/web.xml .这会影响从 .JSP 生成 .java 代码。

评论将此标志描述为:

Should text strings be generated as char arrays, to improve performance in some cases?



我对此有几个问题。
  • 这是在 JSP 页面的动态部分(即每次调用页面时)生成字符串还是在静态部分生成字符串(即当 .java 是从 JSP 构建的)?
  • “在某些情况下” - 这些是哪些情况?性能较差的情况有哪些?
  • 这是否会加快 .java 的生成、.class 的编译或 .class 的执行?
  • 在更技术层面上(这个问题的答案可能取决于第 1 部分的答案),为什么使用 char 数组可以提高性能?

  • 提前致谢

    富有的

    最佳答案

    使用此设置所有 String值声明为 static char[]如下:

    static char[] _char_array_1 = "someString".toCharArray();

    并使用如下:
    out.write(_char_array_1);

    而不是如下使用:
    out.write("someString");

    这有两个明显的好处:
  • 一个 char[]具有比 String 更少的内存开销.
  • toCharArray()不需要(隐式)在每个 out.write(string) 上调用了。

  • 听起来像微优化,但这些小细节在访问量很大的网站中很重要。

    顺便说一下,此设置不是特定于 JBoss AS 的。它是 Jasper具体来说,Apache Tomcat 的 JSP 编译器也在每个 JBoss AS 和 Sun Glassfish 下使用。

    关于optimization - genStrAsCharArray 优化的好处,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3045767/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com