不少高級的編程語言都會有foreach之類的對數據進行迭代的方式,這類迭代如何用相信不用多言,只是有一點是須要注意的,那就是foreach的線程安全問題,不要在迭代的時候對源數據加入add,romove邏輯,即便被標記爲線程安全的,在foreach的時候,增長項和移除項的操做都會致使異常,錯誤代碼示範以下編程
for(T t : tList){安全
/*業務邏輯*/ 數據結構
tList.add();編程語言
tList.remove();線程
/*業務邏輯*/這樣處理,即便是線程安全的數據結構也會致使異常rem
)foreach