线程
文章平均质量分 71
愧序深巷
这个作者很懒,什么都没留下…
展开
-
ReentrantLock
与sys相比,它具有如下特点可中断可以设置超时时间可以设置为公平锁支持多个条件变量与sys一样,支持可重入。原创 2022-07-21 11:32:57 · 194 阅读 · 0 评论 -
线程池创建与使用
通过重复利用已创建的线程降低线程创建和销毁造成的消耗。。当任务到达时,任务可以不需要等到线程创建就能立即执行。。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。...原创 2022-07-20 11:52:23 · 1026 阅读 · 0 评论 -
同步模式异步模式
定义:Guarded Suspension 用在一个线程等待另一个线程的执行结果要点:有一个结果需要从一个线程传递到另一个线程,让他们关联同一个 GuardedObject如果有结果源源不断的从一个线程到另一个线程,可以使用消息队列(生产者消费者)JDK中join Future的实现,采用这个模式因为要等待另一方的结果,归类到同步模式例子:线程一等待线程二的结果优化:不能无限制的等待测试最长等待2s但是下载需要3s等待两秒就不再等待了,不需要产生结果和消费结果的线程一一对应消费队列可原创 2022-06-03 11:37:39 · 274 阅读 · 0 评论 -
wait notify的正确使用
Wait notify分析:T1获得了锁,正在干活,调用wait方法,T1到休息室(Waitset)并释放锁其他线程获得锁执行。T2获得锁,调用notify通知T1干活,T1就到EntryList(blocked)继续竞争锁调用wait方法,就进入了waitset,变为waiting状态blocked与waiting都是阻塞,不占用cpu时间片分析:API介绍:obj.wait() 让进入obj监视器的线程到waitset等待(调用wait(0):无限制等待)obj.wait(lo原创 2022-05-30 18:38:27 · 323 阅读 · 0 评论 -
线程基础部分
一、基本概念进程:进程是指运行中的程序,比如使用qq,就启动了一个进程,操作系统为该进程分配内存空间是动态过程,有自身的产生、存在、消亡的过程线程:由进程创建,是进程的一个实体一个进程可以有多个线程,比如迅雷同时下载多个文件单线程:同一时刻,只允许执行一个线程多线程:同一个时刻,可以执行多个线程,比如一个qq进程同时打开多个聊天窗口并发:同一个时刻,多个任务交替执行,“貌似同时”。单核cpu实现的多任务就是并发并行:同一个时刻,多个任务同时执行,多核cpu可以实现并行cpu1执行原创 2022-05-29 11:33:33 · 98 阅读 · 0 评论