java 是否缓存方法的结果

2024-01-17

I useJMH指定操作的复杂度。如果您从未与 JMH 合作过,请不要担心。 JMH 将刚刚推出estimateOperation方法多次,然后得到平均时间。

问题:[缩小]这个程序会计算Math.cbrt(Integer.MAX_VALUE)每一次?或者它只计算一次并返回缓存结果?

@GenerateMicroBenchmark
public  void estimateOperation() {
    calculate();
}

public int calculate() {
    return Math.cbrt(Integer.MAX_VALUE);
}

问题:[广泛]:JVM 是否缓存过方法的结果?


方法的返回值永远不会cached。然而,不必要的调用可能会消除了由于某些原因,JIT编译器在运行时优化 like 不断折叠, 不断传播, 死代码消除, 循环不变提升, 方法内联 etc.

例如,如果您替换Math.cbrt with Math.sqrt或与Math.pow,该方法在 JIT 编译后根本不会被调用,因为调用会被一个常量替代。 (优化不适用于cbrt,因为它是一种罕见的方法,并且它属于未由 JVM 内在化的本机调用)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

java 是否缓存方法的结果 的相关文章

  • Restlet 和 MULTIPART_FORM_DATA 或通过 Restlet 将文件放在 Google App Engine 上的其他方式

    我尝试通过 Restlet 接收文件 但只获得完整的 MULTIPART FORM DATA 如何提取我的特定文件 我找到了一些代码块 但它们的类型不可用 RESTlet 如何处理多部分 表单数据请求 https stackoverflow
  • eclipse juno 打开时出错

    在安装 Eclipse 并正常工作一年多后 我今天打开 Eclipse Juno 并在打开工作区时收到一条错误消息 我使用的是 Windows 8 64 位 Java 64 位和 Eclipse 64 位 此后我尝试重新安装 Java 和
  • 如何用Java创建图像

    比如说在我的程序中 我有这个paint 方法 我的愿望是创建所绘制的矩形的图像 使用 for 循环 我尝试了下面的方法 它确实给了我那些矩形 蓝色 但背景是全黑的 当我运行程序而不创建图像 仅在 JFrame 上绘制矩形时 背景为白色 我怎
  • 如何在流中收集到TreeMap中?

    我有两个Collectors groupingBy在流中 我需要收集所有信息TreeMap 我的代码 Map
  • 如何使用 Spring Security 跨多个基于 JVM 的应用程序实现单点登录

    我目前正在尝试跨多个基于 JVM Grails Servlet 的 Web 应用程序实现单点登录解决方案 这些应用程序目前都部署在同一个 servlet 容器 当前是 Tomcat 但不想将我的解决方案仅限于 Tomcat 中 所有 Web
  • 将二进制数据的 byte[] 转换为 String

    我有二进制格式的数据 hex 80 3b c8 87 0a 89 我需要将其转换为字符串 以便通过 Jackcess 将二进制数据保存在 MS Access 数据库中 我知道 我不打算在 Java 中使用 String 来存储二进制数据 但
  • Java 将字节转换为二进制安全字符串

    我有一些以字节为单位的数据 我想将它们放入Redis中 但是Redis只接受二进制安全字符串 而我的数据有一些二进制非安全字节 那么如何将这些字节转换为二进制安全字符串以便将它们保存到 Redis 中呢 Base64 对我有用 但它使数据更
  • 如何连接hibernate和DB2

    我正在运行一个使用 struts 和 hibernate 的应用程序 我目前正在使用 Derby 数据库 现在我必须转向 DB2 数据库 请告诉我 我必须做什么配置 休眠配置文件 我必须设置任何类路径吗 多变的 我知道 DB2 有两个 ja
  • 如何减少 JSF 中的 javax.faces.ViewState

    减少 JSF 中视图状态隐藏字段大小的最佳方法是什么 我注意到我的视图状态约为 40k 这会在每次请求和响应时下降到客户端并返回到服务器 特别是到达服务器时 这对用户来说会显着减慢 我的环境 JSF 1 2 MyFaces Tomcat T
  • 在 Java 中打开现有文件并关闭它。

    是否可以在java中打开一个文件附加数据并关闭多次 例如 psuedocode class variable declaration FileWriter writer1 new FileWriter filename fn1 writer
  • 在openjdk:7-jre-alpine docker上如何安装python 3.6

    直到大约一周前 我才在 java 图像上成功使用 python 3 6 脚本 如下所示 FROM openjdk 7 jre alpine RUN apk update apk upgrade apk add no cache bash a
  • 如何在Webview中保存用户名和密码

    目前 我还在学习Android开发的过程中 所以如果我的这个问题对你来说不太容易理解 请原谅 我创建了一个 Android 应用程序 它使用 RecyclerView 显示一组列表 当用户单击列表中的每个名称时 它会将它们重定向到一组不同的
  • HashSet 与 LinkedHashSet

    它们之间有什么区别 我知道 LinkedHashSet 是 HashSet 的有序版本 维护一个跨所有元素的双向链接列表 使用此类代替 HashSet 当您关心迭代顺序时 当你迭代 HashSet 时 顺序是不可预测的 而 LinkedHa
  • WebSocketStompClient 将无法连接到 SockJS 端点

    我正在尝试新的 从版本 4 2 开始 java STOMP 客户端支持 我的出发点是入门指南 使用 WebSocket 构建交互式 Web 应用程序 http spring io guides gs messaging stomp webs
  • 有时 Properties.load() 会跳过行

    在以下情况下 Properties load 会跳过 InputStream 的第二行 这是 Java 的错误还是正常行为 public class PropTest public static void main String args
  • Spring Boot如何加入自定义查询

    我需要创建一个端点 该端点按州返回人口普查数据以及城市列表 我目前使用两个端点来获取此数据 目前回应 自定义查询一 censusByState id 1 code 11 name Rond nia statePopulation 18152
  • 为什么 HttpServletRequest 输入流为空?

    我有这段代码 我从请求输入流读取输入并使用 JacksonMapper 转换为 POJO 它在具有 guice 支持的 jetty 7 容器中运行 Override protected void doPost HttpServletRequ
  • 在 Java 服务器中验证 Windows 用户

    我正在开发一个用 Java 编写的服务器和一个在同一网络上的 Windows 计算机上运行的客户端 用 Net 编写的桌面应用程序 我希望进行一些基本身份验证 以便服务器可以确定运行客户端的用户的用户名 而不需要用户在客户端中重新输入其 W
  • 如何确保超类的子类方法的线程安全?

    我参加了一次面试 并被要求为以下要求设计一个课程 假设我有一个 A 类 它可以有任意数量的子类 即子类 类 A 有一个名为 doSomething 的方法 该方法是同步的 要求是 A 的所有子类都是强制性的重写 doSomething me
  • jvm 如何以及何时何地更改 Linux 的最大打开文件值?

    在linux中 每个登录用户的每个进程的最大打开文件数有限制 如下所示 ulimit n 1024 当我学习java nio时 我想检查这个值 因为channel在Linux中也是一个文件 所以我编写了一个客户端代码来不断创建socketC

随机推荐

  • 在 AMP HTML 页面上嵌入带标记的地图

    目前 我使用 Google 地图 API 生成带有给定位置标记 给定一组纬度 经度坐标 的地图 在 AMP HTML 中 当前执行此操作的方法似乎是使用 amp iframe 扩展https github com ampproject am
  • http持久连接和ssl会话

    HTTP 是一种应用程序协议 底层的 TCP 连接可以关闭并重新打开 而不会影响 HTTP 应用程序 性能除外 通过使用 HTTP1 1 我们使用持久连接 但服务器或客户端仍然可以随时关闭连接 为了安全起见 HTTP 通过 SSL TLS
  • 函数初始化代码从西雅图更改为东京吗?

    我正在将代码从 Delphi 10 Seattle 升级到 Delphi 10 2 Tokyo 并得到很多 H2077 提示Value assigned to never used关于作业 即使在过去明确添加这些内容以消除 可能没有价值 警
  • 如何打开文件而不将其保存到磁盘

    我的问题 如何打开文件 在文件的系统默认 外部 程序中 而不将文件保存到磁盘 我的情况 我的资源中有文件 我想显示这些文件而不先将它们保存到磁盘 例如 我有一个xml文件 我想在用户机器上的默认程序中打开它进行阅读xml文件而不先将其保存到
  • 如何使 ASP.NET TextBox 在 AJAX UpdatePanel 中触发 onTextChanged 事件?

    我试图让一个文本框在每次击键时触发它的 onTextChanged 事件 而不是仅在失去焦点时触发 我认为添加 AsyncPostBackTrigger 可以做到这一点 但它仍然不起作用 我想做的事情可能吗 代码如下
  • Windows 匿名管道上的非阻塞 io

    我希望在 Windows 匿名管道上进行非阻塞 io 这是一个 NET 项目 因此如果可能的话我计划使用托管类 我看到 NET 确实有 AnonymousPipeServerStream 和 AnonymousPipeClientStrea
  • mixReducer 中使用的减速器的声纳代码气味

    我正在使用combineReducers来组合reducers和reducer 如下所示 const todo state action gt switch action type case TOGGLE TODO if state id
  • Spring Boot 无法使用 Java 配置更改 Thymeleaf 模板目录

    将 Thymeleaf 模板文件放置在默认值中src main resources templates对我来说工作正常 当我想重命名目录时说mytemplates 这是行不通的 我收到找不到模板位置 classpath templates
  • JavaScript:获取图像尺寸

    我只有一个图像的 URL 我需要仅使用 JavaScript 确定该图像的高度和宽度 用户在页面上无法看到该图像 我怎样才能得到它的尺寸 var img new Image img onload function var height im
  • 如何将符号链接文件添加到 gitlab 存储库

    如何将文件的符号链接添加到 gitlab 存储库 每次我从 gitlab 运行管道时 本地符号链接都会被破坏 任何关于如何为 gitlab repo 内部的文件夹创建符号链接的建议都会很棒 您可以在 Git 存储库中存储符号链接 特殊条目
  • CSS3边框半径简写解决方案

    Is this border radius 10px 10px 0 0 一个缩短的版本 适用于所有识别它的浏览器 border top left radius 10px border top right radius 10px 是的 第一种
  • 具有唯一约束的 Postgres 哈希索引

    由于 Postgres 10 正确支持哈希索引 我想使用哈希索引进行 id 查找 与 btree 相比 哈希索引的大小更小 理论上更快 我有一张桌子 create table t id int create unique index on
  • 使用前瞻的 C++ std::regex 失败

    我需要从磁盘解析 txt 文件 所以我首先做了一个例子来测试正则表达式 这是我的示例代码 std string txt paragraph r nthis is the text file r ni need only this data
  • 为我的网站创建“徽章”,存储用户徽章的最佳方式?使用PHP

    我正在向我的网站添加 徽章 我想知道存储数据的最佳方式是什么 每个徽章都有一个存储在 MySQL 数据库中的 ID 每个用户在 MySQL 数据库中都有自己的行 并且每个用户都有一个 XML 格式的 userdata 文件 因此 我可以将其
  • SONAR:将此 lambda 替换为方法引用

    Sonar 告诉我 用方法引用替换这个 lambda public class MyClass private List
  • 如何使用 iText 和 Flying Saucer 在从 HTML 创建的 PDF 中嵌入字体?

    我在将波兰语字体嵌入从 HTML 转换为 PDF 时遇到问题 我的 HTML 代码正文有样式 我尝试了两种将此类 HTML 转换为 PDF 的方法 FOP 与 htmlcleaner 带飞碟的 iText 对于 FOP 我可以将所有使用的字
  • 在iOS swift中查看录音?

    是否有任何库可以记录特定的活动UIView 我遇到了这个库 ASScreenRecorder master 但当我尝试在 swift 中使用它或任何其他方式记录时 它显示出许多错误UIView哪个正在显示一些动画 例如飘落的雪花和图像的幻灯
  • Django 中的值相对于前一个值自动递增

    有没有一种方法可以相对于前一个字段自动递增字段 例如 如果前一个记录的值为 09 0001 那么下一个记录应该分配为 09 0002 等等 想法 我正在考虑重写保存方法 但我不太确定到底如何 Django 不允许您在模型中拥有多个 Auto
  • pySpark Columnsimilarities 的问题

    太长了 博士 如何使用 pySpark 比较行的相似度 我有一个 numpy 数组 我想在其中比较每一行之间的相似性 print pdArray 0 1 0 0 0 0 0 0 3 0 0 0 0 0 0 0 0 7 5 0 0 0 1 0
  • java 是否缓存方法的结果

    I useJMH指定操作的复杂度 如果您从未与 JMH 合作过 请不要担心 JMH 将刚刚推出estimateOperation方法多次 然后得到平均时间 问题 缩小 这个程序会计算Math cbrt Integer MAX VALUE 每