摘要: 今天撸代码忽然发现一个奇怪的一场抛出,经过一番排查发现有可能DateFormat 的多线程问题造成的,网上一查DateFormat竟然非线程安全。那我原先的代码。。。(细思极恐) 阅读全文
posted @ 2016-09-26 15:45 zekelai 阅读(318) 评论(1) 推荐(0) 编辑
摘要: 在我们日常使用线程池的时候,经常会有需要获得线程处理结果的时候。此时我们通常有两种做法。 1. 使用并发容器将callable.call() 的返回Future存储起来。然后使用一个消费者线程去遍历这个并发容器,调用Future.isDone()去判断各个任务是否处理完毕。然后再处理响应的业务。 2 阅读全文
posted @ 2016-09-22 15:17 zekelai 阅读(8564) 评论(0) 推荐(1) 编辑
摘要: 1. 链表解决冲突的方式: java中处理Hash散列后的冲突使用的是链表法: java8之前只是使用的简单Entry链表存储键值对。java8后,在Entry队列的长度大于8之后,会自动将队列转换成红黑树的存储,利用红黑树相对于链表更好的增改查效率来解决在出现较长链表时性能快速降低的问题。 图片来 阅读全文
posted @ 2016-07-14 15:20 zekelai 阅读(529) 评论(0) 推荐(0) 编辑