![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
自自然卷
这个作者很懒,什么都没留下…
展开
-
Java 单例模式 安全问题
Java单例模式 安全原创 2016-09-07 16:01:39 · 253 阅读 · 0 评论 -
java并发学习笔记(二) 测试synchronized锁住对象的范围
假如synchronized了一个对象,而这个对象的成员变量中有另个对象的引用,那么是否同时锁住了那个引用所指的对象? A对象中有对象C的引用,synchronized(this)锁住了A,那么另个调用了对象C的线程还能继续执行吗? 测试是可以的,但是不能保证测试代码是正确的。 import java.util.concurrent.ExecutorService; import java.原创 2016-10-26 10:54:42 · 261 阅读 · 0 评论 -
java并发学习笔记(一):wait() notifyAll() 生产者 消费者
一、wait()与notifyAll() 参考《thinking in Java》 import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; class Car{ private boolean waxOn原创 2016-10-24 20:37:56 · 328 阅读 · 0 评论 -
Java数组里元素是List
ArrayList name[] = new ArrayList()[]; ArrayList[] graph = new ArrayList[10]; 都不是正确使用方法,正确的是: ArrayList name[] = new ArrayList[9]; ArrayList> name= new ArrayList>(/*capacity*/); 先记录下错误和解决方原创 2016-11-13 13:28:25 · 4878 阅读 · 0 评论 -
阻塞、非阻塞、同步、异步
1.阻塞、非阻塞、同步、异步的概念 首先要了解用户态和内核态。 输入操作分两个阶段: 等待数据准备好 从内核向进程复制数据 对于套接字的输入操作: 等待数据从网络中到达,当分组到达时被复制到内核的某个缓冲区 数据从内核缓冲区复制到应用进程缓冲区 同步、异步的区别在于进程是否需要等待真正的内核IO操作的完成(数据从内核态到用户态的复制),而阻塞、非阻塞的区别在于进...原创 2017-02-13 11:01:42 · 367 阅读 · 0 评论 -
Java IO流
# 字节流:InputStream OutputStream系列 字符流:Reader Writer系列 InputStreamReader(InputStream)采用默认编码表,将字节流按照特定的编码方式读取 测试 package io流;import java.io.BufferedInputStream; import java.io.IOException; import jav原创 2017-02-18 16:52:20 · 507 阅读 · 0 评论 -
Synchronized、lock、volatile、ThreadLocal、原子性总结、Condition
Synchronized、lock、volatile、ThreadLocal、原子性总结、Condition原创 2017-12-07 21:58:22 · 3220 阅读 · 4 评论 -
不可重入锁、可重入锁的实现以及测试
可重入锁定义:线程去请求自己拥有的锁可请求到interface SelfDefineLock{ void lock(); void unlock(); } class Father{ SelfDefineLock lock; Father(SelfDefineLock lock){ this.lock = lock; } void do_(){ lock.lock(); ...原创 2018-04-08 16:43:26 · 726 阅读 · 0 评论