10 2017 档案
摘要:多个线程操作同一个方法或变量时常常出现错误,要保证每个线程都正常运行就要通过加锁,每次只有一个能够拿到锁通过。如下: 如果没有synchronized 的话,运行结果如图。 不再是依次打印出名字,该关键字还可以加在代码块里。一般为了性能,我们要减少同步执行的代码数量(可以用同步代码块就不用同步方法)
阅读全文
摘要:执行结果: 之间学习并发编程并没有注意到Timer这个类,可能是被摒弃了吧。毕竟现在项目中的定时任务,可以使用组件quartz或者spring框架自带的Task。 我怀疑后面两种也是基于该类实现吧。
阅读全文
摘要:相比ArrayList,双链表的数据结构就复杂多了,想要弄清代码的意思还是要搞清数据结构层面的变化。
阅读全文
摘要:最近在学习数据结构和算法,书上有个ArrayList的简单实现,写的很不错。 注意理解current++和current--
阅读全文