一、ConcurrentLinkedQueue
1、基于CAS实现的安全队列
2、高并发
3、先进先出FIFO
4、没有数据个数限制
5、不允许空的元素
二、BlockQueue
1、线程安全
2、当消息放满后,再次添加消息put会阻塞;当消息消费完后,take会阻塞;
3、消息队列有数量限制
4、先进先出FIFO
5、非高并发
三、使用注意事项
ConcurrentLinkedQueue的API原来.size()是要遍历一遍集合的,难怪那么慢,所以尽量要避免用size而改用isEmpty()。
参考网址:https://blog.csdn.net/ty13572053785/article/details/87869897
网友评论