- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
当在 Docker 容器(主机和容器都是 Cent OS 6.5)内运行的 JVM 实例中无法正确确定当前时区时,我遇到了问题。
首先,我通过 -v/etc/localtime:/etc/localtime:ro
将 etc/localtime
映射到子容器(我认为它是 prevalent way )
当我在主机和容器上通过 SSH 登录时
date -u
打印2015 年 4 月 20 日星期一 11:48:57 UTC
和
date
打印2015 年 4 月 20 日星期一 14:50:41 MSK
然而在 JVM 中
System.out.println(new Date());
我在容器中得到 Mon Apr 20 11:52:24 UTC 2015
并在主机中得到 Mon Apr 20 14:53:17 MSK 2015
。
当前时区是如何准确确定的?
Oracle FAQ 没有说明,我不太明白 Java 使用什么指标来获取当前用户的时区
Do my operating system's timezone patches fix the Java platform'stimezone data?
No. The Java SE platform's timezone data is not readfrom the local or host operating system. The Java SE platformmaintains a private repository of timezone data in locally installedfiles ( .../jre/lib/zi) as part of the Java Runtime Environment (JRE)software. Applying whatever operating system timezone patches (forexample Solaris OS, Linux, Windows) will have no effect on theaccuracy of the Java SE platform's timezone data.
更新:如果有人对解决方法感兴趣 - 我已经按照 Stephen 的回答指定了 TZ 环境变量,所以现在容器是用参数创建的
-v /etc/localtime:/etc/localtime:ro -e "TZ=Europe/Moscow"
最佳答案
根据 this page ,在 Linux 上运行的 JVM 使用 TZ 环境变量为其指定本地时区的名称。
该页面继续解释 TZ 通常设置在“/etc/profile”中,如果使用不“源”该文件的机制启动 Java,它就不起作用。
Oracle 常见问题解答所指的时区数据有所不同。它是 JVM 用来从时区名称映射到相应时区偏移量的数据(考虑到夏令时调整等)。
关于java - Hotspot JVM 如何准确确定 Linux(Centos)上的当前时区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29747328/
我正在研究调试应用程序中的“OutOfMemoryError: Metaspace”错误。就在 OOME 之前,我在 gc 日志中看到以下内容: {Heap before GC invocations
我目前正在使用 SmoothDivScroll 来实现图像的滚动流。但是,左边的 Hotspot 太快了,而 Right Hotspot 似乎 react 不正常。 我设置了一个 fiddle 来展示
是否有命令行参数来增加 Hotspot 将编译的 Java 方法的最大大小(从 8000 个字节码开始)? 最佳答案 您可能需要下载 sources并为此使用调试标志构建(我不确定)。 java -X
我正在尝试处理一个 excel 文件。但是我遇到了以下问题 An unexpected error has been detected by HotSpot Virtual Machine: SIGS
有些人使用NetBeans 来跟踪和调试JDK9。但是,由于我使用 ssh 访问服务器上的源代码,所以我必须使用 GDB 来跟踪源代码并查看 JDK/Hotspot 代码的控制流,而我不能使用 GUI
Pure methods是那些没有副作用的:它们的唯一作用是返回一个值,该值是其参数的函数。 使用相同的参数对同一个纯方法的两次调用将返回相同的值。那么,假设两次调用具有相同参数的纯方法,HotSpo
假设您有一个“简单的”枚举: public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATUR
众所周知,HotSpot 分析运行时使用模式和性能特征,然后在 Java 应用程序运行时基于该分析优化 JIT 流程。因此,在尝试对 Java 应用程序进行基准测试时,通常建议谨慎行事,以便允许在进行
为了简化问题,我们假设在我们的 JRE 中,我们有一个不使用 JIT 的 Hotspot JVM 实现。这意味着我们不会预编译机器代码。 我想理解,JVM在遇到字节码时,解释器是否使用Hotspot编
观看Towards a Universal VM演示文稿中,我研究了这张幻灯片,其中列出了 HotSpot JIT 所做的所有优化: 在特定于语言的技术部分中存在反反射。我试图在互联网上查找有关它的一
我要为 Java 社区做出贡献,并且我对 JVM 很感兴趣。 现在我想下载最新的 JVM Hotspot 源代码并跟踪更新。 首先,我转到http://openjdk.java.net/ . 在其左侧
好吧,我对这个问题很困惑。我正在尝试运行一些似乎适用于一个人但不适用于另外两个人的专有软件。软件抛出此异常: Exception in thread "AWT-EventQueue-1" java.l
HotSpot 虚拟机检测到意外错误: EXCEPTION_ACCESS_VIOLATION (0xc0000005),位于 pc=0x6d6cf45b、pid=1800、tid=2824 Java
据我了解 modulus operation可以使用一些& 明智的魔法进行优化,其中除数是 2 的幂... 这可能是 JIT 编译器进行的优化? 最佳答案 我在这个问题上花了一些时间,写了这个 blo
我正在阅读 HotSpot VM 应用的优化技术,并发现 this presentation by Oracle其中列出了 HotSpot VM 尝试内联方法调用时的三种可能条件: Devirtual
我正在寻找一个开源 JavaScript 库/插件,它可以让我实现一个自定义函数: 允许特权用户在图像上的任意位置放置一个或多个图形图标(例如,类似 Google 的图钉),并将超链接、评论或其他属性
关于 HotSpot JVM 垃圾收集的一些问题。 我们有一个正在运行的 java 进程,选项是: -verbose:gc -XX:+PrintGCDetails -XX:+PrintGCDateSt
了解 Java HotSpot VM 的最佳方式是什么?如果我想修改源代码并添加自己的功能,最好的开发环境是什么(ctags 是否可以很好地与大型代码库配合使用,或者我是否需要一个成熟的 IDE)?
这是一个长时间运行的服务器应用程序,它会产生大量短暂的垃圾,并且在启动后几乎没有任何东西。大多数时候年轻一代收集速度很快,即使是 10 GB 也很快,因为它几乎都是垃圾,但我们偶尔会看到残酷的异常值。
当我在 Java Hotspot 客户端中运行计时测试程序时,我得到了一致的行为。然而,当我在 Hotspot 服务器上运行它时,我得到了意想不到的结果。本质上,在我尝试过的某些情况下,多态性的成本高
我是一名优秀的程序员,十分优秀!