- 博客(3)
- 收藏
- 关注
原创 wait()和notify()以及notifyAll()方法简述
wait()和notify()以及notifyAll()方法 wait()使当前线程进入等待队列,并释放该线程所拥有的锁,(而sleep()方法挂起当前线程,并不释放该线程所拥有的锁),等待某个条件发生变化,再由其他线程唤醒(notify)。 wait()方法可以有一个参数,即等待的最长时间,若等待时长超过最长时间,该线程会从wait()中恢复执行。 notify()用来唤醒由wait()引起的被...
2018-11-28 11:49:17
635
原创 synchronized关键字
synchronized关键字 synchronized 有两种加锁方式 (1) 某个对象实例内,防止多个线程对同一个实例对象的同时访问
2018-11-27 17:10:13
159
原创 volatile关键字的两层语义
volatile关键字的两层语义 (1)保证了不同线程对这个变量进行操作时的可见性 首先说一下java线程。 每当开启一个Java线程时,jvm就会给该线程分配一块工作内存,并把共享变量复制一份到该工作内存。线程对共享变量进行操作时,只是操作工作内存中该变量的副本,并不是主存中的变量。 接下来再探讨volatile关键字的作用 若线程A与线程B共享变量x被volatile修饰,当线程A对变量x进...
2018-11-23 16:15:05
254
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅