国外好文分享
文章平均质量分 93
国通快递驿站
这个作者很懒,什么都没留下…
展开
-
VM 线程概述:了解 Java 中的多线程
Java 中的线程是一个高级主题,许多开发人员都试图避免使用多线程代码。**多线程代码的编写、推理和调试通常更为复杂。**竞争条件和线程安全是不可容忍的,可能会产生难以调试的问题并带来严重后果。在本文中,我们将讨论一个简单应用程序中的线程。不过,我们只考虑 JVM 的默认线程。**我们不会探讨 Java 并发性或多线程方面的更高级主题。**原创 2024-10-12 08:14:04 · 517 阅读 · 0 评论 -
ConcurrentHashMap 中的并行性
我们重点介绍了 ConcurrentHashMap 中的并行性以及如何在应用程序中使用此功能。此外,我们还了解了启用此功能时 JVM 会发生什么情况。并行性是一项很酷的功能,可以在现代并发应用程序中很好地使用。原创 2024-10-04 06:40:49 · 599 阅读 · 0 评论 -
掌握 JVM 垃圾收集线程:简化 VM 选项
垃圾收集阶段对于任何 Java 应用程序都至关重要。主要目标是保持高吞吐量和低延迟之间的平衡。垃圾收集周期越短越好。因此,分配给垃圾收集器的资源越多,它的工作速度就越快,从而整体上改善我们的应用程序。在本文中,我们将了解线程数对应用程序性能的影响。本文主要介绍直接在主机上运行的应用程序。**但是,我们也可以将这些见解应用于容器化应用程序。**原创 2024-10-01 10:51:59 · 667 阅读 · 0 评论 -
大堆对象是如何影响程序的性能的
在本文中,我们将详细了解 JVM 如何存储对象及其在内存中的表示形式。此外,我们将深入探讨性能影响以及如何利用它们来获得优势。此外,我们将了解如何使用以及它如何影响应用程序的性能。此外,我们将了解UseCompressedOops*和堆大小之间的联系。原创 2024-09-29 09:32:43 · 939 阅读 · 0 评论 -
现代java,Java 8 到 Java 21特性一览
Java 是一种多功能编程语言,它经历了变革之旅。从 Java 8 开始,令人兴奋的功能改变了开发人员的编码方式。从用于更好功能的漂亮 lambda 表达式到使处理数据更容易的 Stream API,Java 8 改变了游戏规则。我们将查看 Java 21 之前的更新,其中密封类可让您更好地控制类,而记录使创建数据对象变得轻而易举。加入旅程,我将用简单的解释和实际示例分解这些现代 Java 功能。由于这将是一个漫长的旅程,而且文章会很长,我建议将其分成较小的部分以方便您阅读。原创 2024-09-25 07:08:33 · 958 阅读 · 0 评论 -
Java 中的垃圾回收综合讲解
Java 垃圾收集综合指南Java 中的垃圾收集 (GC) 是 Java 虚拟机 (JVM) 通过删除应用程序中不再可访问的对象来自动回收内存的过程。这有助于防止内存泄漏并优化活动对象的可用内存,从而保持 Java 应用程序的性能和效率。原创 2024-09-24 06:04:49 · 965 阅读 · 0 评论 -
spring boot中虚拟线程性能探讨
Spring Boot 已成为 Java 生态系统中事实上的框架。在这篇文章中,让我们讨论如何在 Spring Boot 应用程序中配置虚拟线程,并研究和比较其与本机线程的性能特征。此 Spring Boot 应用程序将使用 REST 端点计算大于或等于 10000 的常数的斐波那契和。借助 JMeter,我们将模拟 30 分钟内 1000 个用户的负载,并了解其吞吐量和偏差。我们将针对本机线程和虚拟线程执行此实验,并分析这些操作的线程转储和 GC 日志分析。让我们开发一个小代码来计算 10000 的斐波那原创 2024-09-23 06:50:40 · 734 阅读 · 0 评论 -
理解JVM中的死锁:原因及解决方案
这样,我们可以确保每个线程以相同的顺序获取锁。引入对象排序的一种方法是利用它们的hashCode值。此外,原创 2024-09-22 14:40:40 · 1108 阅读 · 0 评论 -
理解JAVA中的Native内存追踪(NMT)机制
堆内存(年轻代、老一代)元空间线程代码缓存直接缓冲GCJNINMT其它如果您有兴趣的话呢,可以观看此视频片段来了解有关这些JVM 内部内存区域的更多信息。NMT 是 Java 虚拟机 (JVM) 的一项功能,可跟踪和报告所有 JVM 内存区域的使用情况。当前分配的内存大小是多少?当前使用的内存大小是多少?其他信息(例如活动加载类数、线程数)原创 2024-09-21 08:40:32 · 663 阅读 · 0 评论 -
TIOBE 2024年9月编程语言排行榜出炉!老将C排行降至历史最低点
作为所有编程语言之母,C语言本月在TIOBE指数中下降了一个位置。目前C语言排名第4,这是自2001年TIOBE指数开始以来的最低位置。C语言正在失去其魔力吗?C是一种相对较小的编程语言,生成的代码性能非常出色。因此,它长期以来一直是嵌入式系统的首选。到目前为止,C语言的唯一严重缺点是它不适合大规模开发。由于缺乏面向对象的特性,大型C程序难以维护。现在,随着嵌入式系统的功能和代码规模不断增长,并且越来越多的嵌入式编译器对C++的支持越来越好,许多开发者开始从C转向C++。最近,C语言又面临了一项新威胁。原创 2024-09-08 06:44:20 · 1174 阅读 · 0 评论 -
Java 21 虚拟线程 - 兄弟,我的锁在哪儿呢?
Netflix 长期以来一直将 Java 作为其庞大的微服务群的主要编程语言。随着我们采用新版本的 Java,我们的 JVM 生态系统团队会寻找可以改善系统人机工程学和性能的新语言功能。在中,我们详细介绍了在迁移到 Java 21 时,将分代 ZGC 切换为默认垃圾收集器如何使我们的工作负载受益。虚拟线程是我们很高兴在此次迁移中采用的另一个功能。对于刚接触虚拟线程的人来说,为“轻量级线程,可显著减少编写、维护和观察高吞吐量并发应用程序的工作量”。原创 2024-09-07 06:35:19 · 977 阅读 · 0 评论 -
Java Streams 特性探索,那些你可能还不知道的隐秘武器
Java Streams 从一开始就配备了强大的特性,Java 开发者也在不断通过每个版本改进它们。在本文中,我们将探索一些您可能还不知道的隐藏特性。原创 2024-09-05 06:26:46 · 610 阅读 · 0 评论