logo头像
Snippet 博客主题
Java异常处理机制

Java异常处理机制

简介程序运行时,发生的不被期望的事件,它阻止了程序按照程序员的预期正常执行,这就是异常。而异常处理机制能让程序在异常发生时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,让程序尽最大可能恢复正常并继续执行,且保持代码的清晰。Ja...

Java并发中遇到的锁

在Java高并发编程中,会遇到各种锁,这里简单介绍一下各种锁的分类。涉及到了以下内容: ①公平锁/非公平锁 ②可重入锁 ③独享锁/共享锁 ④互斥锁/读写锁 ⑤乐观锁/悲观锁 ⑥分段锁 ⑦偏向锁/轻量级锁/重量级锁 ⑧自旋锁 上面是很多...

JVM运行时数据区域

JVM运行时数据区域

Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域依赖用户线程的启动和结束而建立和销毁。 1.程序计数器程序...

关于多线程的锁优化

1.如何提供锁的性能1.1减小锁持有时间:对于使用锁进行并发控制的应用程序而言,在锁竞争的过程中,单个线程的持有时间与系统性能有着直接的关系。减少锁的持有时间有助于降低锁冲突的可能性,进而提高系统的并发能力。 1.2减小锁粒度:所谓减...

Java线程池浅析

Java线程池浅析

为了避免系统频繁地创建和销毁线程,我们可以让创建的线程进行复用,于是我们可以把创建的线程放入一个池子里管理起来,即线程池。在线程池中,总有那么几个活跃线程。当需要使用线程时,可以从池子中随便拿一个空闲线程,当完成工作时,并不急着关闭线...

JDK并发包

1.同步控制1.1重入锁重入锁使用java.util.concurrent.locks.ReentrantLock类来实现的,它完全可以替代synchronized关键字。与synchronized相比,重入锁有着显式的操作过程,开发...

Java多线程基础

Java多线程基础

1.基本特性1.1特性①原子性:原子性是指一个操作是不可中断的; ②可见性:可见性是指当一个线程修改了某一个共享变量的值,其他线程是否能够立即知道这个修改; ③有序性:即程序执行的顺序按照代码的先后顺序执行。 1.2指令重排在计算机执...

Spring IOC和DI简单理解

Spring IOC和DI简单理解

1.IOC是什么Ioc—Inversion of Control,即“控制反转”,不是什么技术,而是一种设计思想。在Java开发中,IOC意味着将你设计好的对象交给容器控制,而不是传统的在你的对象内部直接控制。如何理解好IOC呢?理解...