最新 最热

jstack命令参数

jstack命令是Java开发工具包(JDK)中的一部分,主要用于生成Java虚拟机(JVM)中所有线程的堆栈跟踪,这对于诊断线程挂起、死锁或性能瓶颈等问题非常有用。下面是jstack命令的一些常用参数及其含义:...

2024-07-29
3

手把手教你java CPU飙升300%如何优化

腾讯云开发者社区是腾讯云官方开发者社区,致力于打造开发者的技术分享型社区。提供专栏,问答,沙龙等产品和服务,汇聚海量精品云计算使用和开发经验,致力于帮助开发者快速成长与发展,营造开放的云计算技术生态圈。...

2024-07-29
3

理解多线程看这一篇就够了

程序 程序是含有指令和数据的文件,静态地存储在磁盘等存储设备上。它是软件的实体,但未被激活。

2024-07-29
4

如何合理设置Java线程池大小

Java线程池的合理配置直接关系到系统性能和资源利用率。根据任务性质的不同,合理的线程池大小设置策略也有所区别,主要包括CPU密集型、IO密集型及混合型任务。...

2024-07-29
3

并发控制利器Semaphore

Semaphore 是Java并发编程中的一个重要工具,用于管理对共享资源的访问权限,确保系统资源不会因过度访问而耗尽。形象地说,Semaphore 可以比喻为交通信号灯,它控制着能够同时进入特定区域(如马路)的车辆数(线程数)。当一定数量...

2024-07-29
9

long类型在32位操作系统上的安全问题

在深入探讨这一话题之前,我们首先需要理解long类型在不同操作系统中的基本特性。long作为一种基本数据类型,在32位操作系统中通常占据4字节(32位),而在多数64位操作系统(遵循LP64模型)中则扩展至8字节(64位)。这一差异看似微不...

2024-07-29
5

linux上如何排查JVM内存过高?

因为Java线程文件中的线程ID是16进制,所以需要将线程PID 从十进制转换成十六进制 命令: echo "obase=16;161633" | bc 然后转换后输出: 3F23 最后执行 jstack 3F23 如下图已经详细打印了堆栈,自己可以去分析了。...

2024-07-29
2

JVM的参数含义及设置

JVM(Java虚拟机)的参数主要用于调整和优化Java应用的运行环境,包括内存管理、垃圾回收、性能监控等方面。JVM参数大致可以分为三类:

2024-07-29
4

这篇文章是我在评论区学到的。

总结来说就是如果线程池的任务之间存在父子关系,那么请不要使用同一个线程池。如果使用了同一个线程池,可能会因为子任务进了队列,导致父任务一直等待,出现假死现象。...

2024-07-29
4

秒杀优化-基于阻塞队列实现秒杀优化

修改下单动作,现在我们去下单时,是通过lua表达式去原子执行判断逻辑,如果判断我出来不为0 ,则要么是库存不足,要么是重复下单,返回错误信息,如果是0,则把下单的逻辑保存到队列中去,然后异步执行...

2024-07-28
4