
线程
文章平均质量分 81
jacksonary
备忘录
展开
-
java中几种锁
文章内容来自并发编程网的文章阅读,部分示例代码已修改。文章目录1. 自旋锁1.1 常见3类自旋锁2. 阻塞锁3. 可重入锁1. 自旋锁 自旋锁就是它的名字一样,让当前线程不停的在一个循环体内执行,当循环的条件被其他线程改变时才能进入临界区。自旋锁的示例代码(仅以非公平锁为例)如下:public class SpinLock { /** * 临界区的owner ...原创 2019-11-20 19:48:41 · 577 阅读 · 0 评论 -
多线程知识点总结
1.进程和线程的区别进程:是程序的执行过程,具有动态性,即运行的程序就叫进程,不运行就叫程序 线程:系统中的最小执行单元,同一进程中有多个线程,线程可以共享资源,一旦出现共享资源,必须注意线程安全!!Java线程分为两类,一类是守护线程,典型是垃圾回收GC;第二类是用户线程,当JVM中都是JVM守护线程,那么当前的JVM将退出。2.线程创建的两种方式,继承Thread类、实现Runnable接口2原创 2017-06-02 22:17:07 · 6718 阅读 · 2 评论 -
线程中调用Spring管理的Bean,以及定时线程的问题
这搁需求还是比较正常的,尝试了外部用@Autowired注解引入Spring注解的Bean,然后以此为参数传入Thread中,发现报NULLPOINTER异常,于是放弃,而且要定义为static,多方尝试之后,用如下的方法的得以解决问题: 首先新建SpringBean的工具类package com.hhu.util;import org.springframework.beans.BeansExc原创 2017-07-21 12:31:01 · 741 阅读 · 0 评论 -
并发控制学习记录
线程这一块是前段时间面试过程中遇到很多的问题,学校里面接触有限,吃了一些亏,抽空最近在看并发编程编程的挑战这本书并作一些简单记录。第一章 简述并发的目的是为了让程序更快的执行,但是有一点必须明确的是,并不是多线程就一定比单线程运行的快!我记得这个问题是当初面试群硕时面试官提的问题,逐渐向后挖掘这个问题并不局限于软件问题了。这里注意即使时单核CPU也是支持多线程的,通过给各个线程分配时间原创 2017-12-25 09:24:39 · 347 阅读 · 0 评论 -
关于ThreadLocal
ThreadLocal提供了与线程绑定的变量,访问变量的每个线程都具有一个该变量的副本,它们都可以对这个变量的副本进行一些独立的操作(变量的这些副本是线程隔离的,所以不存在线程安全的问题),ThreadLocal的实例经常是作为一个私有静态字段出现。在数据库连接复用的场景下(提供一个获取和关闭连接的方法),多个线程在对数据库操作时可以能会出现线程安全的问题,比如:多线程获取数据库连接时,可...原创 2018-09-01 18:04:24 · 258 阅读 · 0 评论