排序
如何排查jvm问题的方法
对于还在正常运行的系统: 可以使用jmap来查看JVM中各个区域的使用情况 可以通过jstack来查看线程的运行情况,比如哪些线程阻塞、是否出现了死锁 可以通过jstat命令来查看垃圾回收的情况,特别...
引用计数怎么实现,在哪里?
引用计数(Reference Counting)是一种内存管理技术,它主要用于跟踪对象被引用的次数。 在引用计数中,每个对象都有一个计数器,记录着当前对象被引用的次数。 当对象被引用时,计数器加1;当...
SpringBoot使用Thymeleaf生成PDF
在现代Web应用中,生成PDF文件是一个常见的需求。 为了满足这一需求,我们可以利用Spring Boot集成Thymeleaf和Flying Saucer PDF来生成具有丰富内容的PDF文件。 Thymeleaf作为模板引擎,提供了...
Spring AOP/IOC实现原理
AOP 什么是AOP 通俗的讲就是当你想要实现对象增强,就可以使用AOP。 不然的话还需要自己创建代理,AOP就是为了解决 非业务代码抽取 的问题。 它的底层技术实现是动态代理,在Spring内实现依赖...
网络编程基本概念?(编程的重要概念)
网络编程涉及的基本概念有很多,这里我们列举一些重要的概念: 网络协议:规定了在网络通信中,计算机和设备如何交换信息的规则。常见的网络协议有TCP/IP、HTTP、FTP、SMTP等。 IP地址:是用于...
c++内存区域是如何分布的
栈(Stack): 栈是由编译器自动管理的,用于存储局部变量、函数参数、函数返回地址等。栈内存的分配和释放是自动进行的,当函数调用结束时,其在栈上分配的内存会自动被释放。 栈内存的特点是...
深入理解JavaScript中Object.keys方法的使用技巧
在JavaScript中,Object.keys()方法是一种常用的枚举对象属性的方式。 本文将深入讲解Object.keys()的使用方法和技巧,并通过实际示例来加深理解。 1. Object.keys()方法的基础 Object.keys()方...
如何设计一个线程池
设计一个线程池涉及到多个方面,包括线程的创建与销毁、任务的提交与执行、线程间的通信等。 以下不念给出的是一个简单的线程池设计思路: 线程池的结构:创建一个线程池类,其中包含一个任务队...












