![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 84
Melody袁
这个作者很懒,什么都没留下…
展开
-
多线程的通知机制
典型应用场景–阻塞队列生产者—放入元素消费者—取出元素轮询模式–定期去问性能浪费,实时性低Object的三个方法:wait()导致当前线程等待,直到另一个线程调用该对象的 notify()方法或 notifyAll()方法。notify()唤醒正在等待对象监视器的单个线程。notifyAll()唤醒正在等待对象监视器的所有线程。注意事项:要在某个对象上进行以上三个操作,首先必须持有该对象的锁。import java.util.concurrent.TimeUnit;cl原创 2021-06-13 13:31:05 · 1477 阅读 · 1 评论 -
一定要会的synchronized关键字的用法
synchronized(同步)关键字修饰方法修饰普通方法,锁的是当前实例对象修饰静态方法,锁的是当前类的Class对象修饰代码块,锁的是synchronized括号里的对象public class SyncDemo1 { //修饰普通方法 public synchronized void method(){ } //修饰静态方法 public static synchronized void staticMethod(){ } p原创 2021-06-07 20:49:07 · 242 阅读 · 0 评论 -
线程的三种创建方式以及代码实现
线程和进程的概念一个进程可以有多个线程程序:是指令和数据的有序集合(静态的)进程:是执行程序的一次执行过程(动态的),是系统资源分配的单位。在操作系统中运行的程序就是进程。通常在一个进程中可以包含若干个线程,当然一个进程中至少有一个线程,是主线程。线程是CPU调度和执行的单位。注意:很多多线程是模拟出来的,真正的多线程是指有多个CPU,即多核,如服务器。如果是模拟出来的多线程,在一个cpu的情况下,在同一个时间点,cpu只能执行一个代码,因为切换的很快,所以就造成同时执行的错觉。核心概念线程原创 2021-03-09 17:01:22 · 953 阅读 · 0 评论