Java笔记-ConcurrentLinkedQueue的基本使用和注意事项
生活随笔
收集整理的這篇文章主要介紹了
Java笔记-ConcurrentLinkedQueue的基本使用和注意事项
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
ConcurrentLinkedQueue這玩意用起來太方便了,這個的使用場景是在并發(fā)的時候使用。
這里提供一個幾個簡單的例子:
@Overridepublic void run() {try {if(queue == null || queue.size() == 0){// System.out.println(Thread.currentThread() + " queue is null or size is zero");return;}while (!queue.isEmpty()){String sql = queue.poll().toString();//TODO 寫邏輯業(yè)務(wù)............}}catch (SQLException e) {e.printStackTrace();}}這里有個注意事項,在遍歷ConcurrentLinkedQueue時不要使用for循環(huán):
for(int i = 0; i < queue.size(); i++){//TODO......... }在多線程中這樣寫是會有問題的,請用下面的方式進行遍歷:
while(!queue.isEmpty()){String sql = queue.poll().toString();//TODO寫邏輯業(yè)務(wù)............ }這里的poll(),也就是出隊列,這里也就是基本的數(shù)據(jù)結(jié)構(gòu)。
總結(jié)
以上是生活随笔為你收集整理的Java笔记-ConcurrentLinkedQueue的基本使用和注意事项的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java笔记-SSLSocket双向认证
- 下一篇: MySQL笔记-MHA(Master H