【问题标题】:java JIT -- what optimizations are possible?java JIT——可以进行哪些优化?
【发布时间】:2011-02-07 23:17:30
【问题描述】:

学术上的好奇。 JIT 是否可以采用这样的代码,识别格式字符串是静态最终格式,从而预先计算切片格式字符串,从而将其优化为仅具有最少附加的 StringBuilder?

public static String buildDeleteSql(BaseObject object)
{
    String table;
    String schema;

    String deleteSql = String.format(
            "DELETE FROM %s.%s WHERE %s = '%s' AND %s = '%s'",
            schema,
            table,
            BaseObject.ATTR_ID,
            StringUtils.escapeForSQLString(object.getId()),
            BaseObject.ATTR_REVISION,
            StringUtils.escapeForSQLString(object.getRevision())
        );

    return deleteSql;
}

【问题讨论】:

  • 我正在考虑的假设 JIT 可以。您是否正在考虑使用特定的 JVM?
  • 这段代码需要用 PreparedStatement 重构:)

标签: java optimization jit


【解决方案1】:

理论上,JVM 可能会理解您的示例。同时,实际上,现有的 JVM 不会;将预算用于优化可能不是一个非常有利可图的地方。尤其是因为字符串格式化通常用于序列化数据,在这种情况下,您可能最终会花费大部分时间等待 I/O 完成。

【讨论】:

    猜你喜欢
    • 2023-04-10
    • 1970-01-01
    • 2013-02-26
    • 1970-01-01
    • 2010-10-30
    • 1970-01-01
    • 2013-05-31
    • 2021-12-04
    • 2011-10-24
    相关资源
    最近更新 更多