排序
Java面试题:不使用锁如何实现线程安全的单例?
面试官问: 不使用锁,如何实现线程安全的单例? 如果不能使用synchronized和lock的话,想要实现单例可以通过饿汉模式、枚举、以及静态内部类的方式实现。 饿汉: 其实都是通过定义静态的...
进程和线程的地址空间有什么区别?
本质区别:进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位 在开销方面:每个进程都有独立的代码和数据空间(程序上下文),程序之间的切换会有较大的开销;线程可以看做...
自旋锁是什么
自旋锁加锁失败后,线程会忙等待,直到它拿到锁。 自旋锁是通过 CPU 提供的 CAS 函数(Compare And Swap),在「用户态」完成加锁和解锁操作,不会主动产生线程上下文切换,所以相比互斥锁来...
Linux获取线程状态方法(如何获取Linux线程状态)
在 Linux 中,可以使用 ps 命令或查看 /proc 文件系统来获取线程状态。 以下是两种方法的详细说明: 方法 1:使用 ps 命令 ps 命令用于报告当前系统的进程状态。要获取线程状态,可以使用 -L 选...
使用双异步后,如何保证数据一致性?
很简单,通过对比Excel文件行数和入库数量是否相等即可。 那么,如何获取异步线程的返回值呢? 一、通过Future获取异步返回值 我们可以通过给异步方法添加Future返回值的方式获取结果。 FutureT...
Redis锁被别人释放解决办法
什么是分布式锁? 要介绍分布式锁,首先要提到与分布式锁相对应的是线程锁、进程锁。 线程锁:主要用来给方法、代码块加锁。当某个方法或代码使用锁,在同一时刻仅有一个线程执行该方法或该代码...
分布式、CAP和BASE理论基础
在计算机科学领域,分布式系统是一门极具挑战性的研究方向,也是互联网应用中必不可少的优化实践,而 CAP 理论和 BASE 理论则是分布式系统中的两个关键的概念。 1、什么是...
什么是程序计数器?
程序计数器:线程私有的,内部保存的字节码的行号。用于记录正在执行的字节码指令的地址。 javap -verbose xx.class 打印堆栈大小,局部变量的数量和方法的参数。 java虚拟机对于多线程...

















