1. synchronized和lock的区别: synchronized 是Java内置关键字,lock 是Java类; synchronized 无法判断是否获得锁,lock 可以; synchronized 会自动释放,lock 需要手动释放; synchronized 线程1阻塞,线程2会永 ...
分类:
编程语言 时间:
2020-03-02 22:18:12
阅读次数:
75
任意一个Java对象,都拥有一组监视器方法(定义在Object类中),主要包括wait,notify,notifyAll方法,这些方法与synchornized关键字相配合,可以实现等待/通知模式。 Condition接口也提供了类似的Object的监视器方法,与Lock配合可以实现等待/通知模式。 ...
分类:
其他好文 时间:
2020-03-01 12:30:15
阅读次数:
68
ReentrantLock是一把重入锁,可中断,可以限时,支持公平锁和非公平锁。 下面举一个生活中的例子,帮助大家来更好的理解ReentrantLock这些特性。 火车购票。买票人争先恐后的跑到G1020检票口检票回家,谁先跑到检票口,谁先验票,谁先回家。那些跑的慢没有抢到检票权的,一个一个的在后面 ...
分类:
其他好文 时间:
2020-02-29 18:45:59
阅读次数:
63
GPS平台、网站建设、软件开发、系统运维,找森大网络科技!http://cnsendnet.taobao.com来自森大科技官方博客http://www.cnsendblog.com/index.php/?p=439 ...
分类:
编程语言 时间:
2020-02-28 20:23:49
阅读次数:
59
1、听故事把知识掌握了 在一个村子里面,有一口井水,水质非常的好,村民们都想打井里的水。这井只有一口,村里的人那么多,所以得出个打水的规则才行。村长绞尽脑汁,最终想出了一个比较合理的方案,咱们来仔细的看看聪明的村长大人的智慧。 井边安排一个看井人,维护打水的秩序。 打水时,以家庭为单位,哪个家庭任何 ...
分类:
编程语言 时间:
2020-02-21 23:56:40
阅读次数:
108
WEB性能的终极目标 减少到客户端的延迟,让用户能够尽可能快的打开前端网页并进行相关交互。 尽可能发送少的数据给服务器,从服务器下载尽可能少的数据,尽可能减少往返(Round Trips)。 HTTP/1.x 的缺陷 线程阻塞,在同一时间,同一域名的请求有一定数量限制,超过限制数目的请求就会被阻塞。 ...
分类:
Web程序 时间:
2020-02-13 10:06:58
阅读次数:
120
本人曾接手过一些很奇怪的代码,基本到处都是是volatile和硬加锁,说是为了安全,就不怕死锁和性能太差吗?其实我压根不想改这种东西了,既然能过code review那么说明什么问题了?我不会让自己成为这类人。 乐观锁和悲观锁 简单解释就是,悲观锁认为在一个线程使用数据的时候,一定会有别的线程来修改 ...
分类:
编程语言 时间:
2020-01-30 22:46:51
阅读次数:
94
1. 并发(concurrency):在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行。其中两种并发关系分别是同步和互斥 互斥:进程间相互排斥的使用临界资源的现象,就叫互斥。 同步(synchronous):进程之间的关系不是相互排斥临界资 ...
分类:
编程语言 时间:
2020-01-10 20:04:24
阅读次数:
103
编程思想之多线程与多进程(1)——以操作系统的角度述说线程与进程原创luoweifu 发布于2015-06-22 20:05:28 阅读数 75442 收藏展开 原文:http://blog.csdn.net/luoweifu/article/details/46595285 作者:luoweifu ...
分类:
编程语言 时间:
2020-01-08 14:32:07
阅读次数:
66
线程生命周期(线程状态) Java中的线程的生命周期大体可分为5种状态。 新建:创建完线程、还没调用start方法。 就绪:已经调用start方法,等待CPU分配时间片。 运行:run方法正在运行中。 阻塞:wait、sleep、yield、join 使线程阻塞住。 死亡:run方法运行完毕。 多线 ...
分类:
编程语言 时间:
2020-01-07 00:27:14
阅读次数:
104