为什么会有本文?
很久以前,在我刚刚接触计算机的时候,就非常贪心,想把自己所有的文件保存下来,为了以后会“用得到”。后来有了网盘之类的东西,但是我不满足于仅仅保存一个文件。对其中的同步逻辑不明白,怕把文件同步成了不想要的版本。在我认识了Git之后,这个问题得到了完美的解决。
很久以前,在我刚刚接触计算机的时候,就非常贪心,想把自己所有的文件保存下来,为了以后会“用得到”。后来有了网盘之类的东西,但是我不满足于仅仅保存一个文件。对其中的同步逻辑不明白,怕把文件同步成了不想要的版本。在我认识了Git之后,这个问题得到了完美的解决。
这篇文章总结了所有的Java集合(Collection)。主要介绍各个集合的特性和用途,以及在不同的集合类型之间转换的方式。
在毛概的课堂上读完了最后一页,倒吸了一口冷气。1984中描述的社会,正是一个完全无自由的一个社会。现实生活中,人类历史上的奴役,充其量不过是形体的摧残,1984中已经不是野蛮的社会,剥夺自由的方式也从形体的奴役上升到了思想的奴役。
Q:wait(),notify() 和 notifyAll() 是用来干什么的?
A:wait(),notify() 和 notifyAll() 可以让线程协调完成一项任务。例如,一个线程生产,另一线程消费。生产线程不能在前一产品被消费之前运行,而应该等待前一个被生产出来的产品被消费之后才被唤醒,进行生产。同理,消费线程也不能在生产线程之前运行,即不能消费不存在的产品,所以应该等待生产线程执行一个之后才执行。利用这些方法,就可以实现这些线程之间的协调。从本质上说,一个线程等待某种状态(例如一个产品被生产),另一个线程正在执行,知道产生了某种状态(例如生产了一个产品)。