返回目錄

題目有點(diǎn)意思,大家都知道Dictionary<K,V>不是線程安全的類型,而List<T>是線程安全的嗎?在今天之前大叔沒有去測試過,而就在今天也是一個VIP問我,說在我的代碼中使用了并行,然后為一個List賦值,說的直接一點(diǎn)就是:List元素是全局的,在各個線程里分別去操作它,測試數(shù)據(jù)是1萬條,而在測試結(jié)果之后,我發(fā)展List元素最終的數(shù)組是9000多條,也就是說被并發(fā)了幾千條數(shù)據(jù),呵呵,下面咱們看一下源代碼吧!

測試代碼:

萬碼學(xué)堂,電腦培訓(xùn),計(jì)算機(jī)培訓(xùn),Java培訓(xùn),JavaEE開發(fā)培訓(xùn),青島軟件培訓(xùn),軟件工程師培訓(xùn)

     [TestMethod]        public void TestMethod0()
        {
            List<int> intList = new List<int>();            var result = Parallel.ForEach(Enumerable.Range(1, 10000), (val) =>
            {
                intList.Add(val);
            });            if (r