摘要:
转载:Linux1:Linux概述 Linux是什么 这是一个Linux系列,本系列中的文章和其他系列中的文章有所不同,尽可能以讲清楚每一个简单的知识点为主,未必每一篇都是长篇大论,力求面面俱到。 学习Linux,首先我们得知道Linux是什么。 人们实际上已经习惯了用Linux这个词来形容整个基于 阅读全文
摘要:
mybatis中的查询缓存 实现list的深拷贝 阅读全文
摘要:
Java多线程9:ThreadLocal源码剖析 https://www.iteye.com/topic/777716 https://www.cnblogs.com/xzwblog/p/7227509.html https://blog.csdn.net/sonny543/article/deta 阅读全文
摘要:
一、前言 通过一个简单的例子引入join()方法 public class Thread01 extends Thread{ @Override public void run() { for(int i = 0; i < 5; i++) { System.out.println(Thread.cu 阅读全文
摘要:
一、概述 之前讲解Thread类中方法的时候,interrupt()、interrupted()、isInterrupted()三个方法没有讲得很清楚,只是提了一下。现在把这三个方法同一放到这里来讲,因为这三个方法都涉及到多线程的一个知识点 中断机制。 Java没有提供一种安全、直接的方法来停止某个 阅读全文
摘要:
一、轮询 线程本身是操作系统中独立的个体,但是线程与线程之间不是独立的个体,因为它们彼此之间要相互通信和协作。 想像一个场景,A线程做int型变量i的累加操作,B线程等待i到了10000就打印出i,怎么处理?一个办法就是,B线程while(i == 10000),这样两个线程之间就有了通信,B线程不 阅读全文
摘要:
一、死锁 简单的说,死锁就是线程1已经持有锁A,要去获取锁B,线程2已经持有锁B,要去获取锁A,即两个线程都在等待获取对方持有的锁。 图示: 举例:简单示例说明一下死锁的产生 定义两个线程分别调用上述对象的两个方法 测试一下: 结果: 分析一下产生死锁的原因。 thread01执行deadLock对 阅读全文
摘要:
并发编程是Java程序员最重要的技能之一,也是最难掌握的一种技能。它要求编程者对计算机最底层的运作原理有深刻的理解,同时要求编程者逻辑清晰、思维缜密,这样才能写出高效、安全、可靠的多线程并发程序。本系列会从线程间协调的方式(wait、notify、notifyAll)、Synchronized及Vo 阅读全文