Является ли этот код параллельного массива scala потокобезопасным?

Я хочу использовать для задачи параллельные массивы, и, прежде чем я начну кодирование, мне было бы интересно узнать, является ли этот небольшой фрагмент поточно-ориентированным:

import collection.mutable._

var listBuffer = ListBuffer[String]("one","two","three","four","five","six","seven","eight","nine")
var jSyncList  = java.util.Collections.synchronizedList(new java.util.ArrayList[String]())
listBuffer.par.foreach { e =>
    println("processed :"+e)
    // using sleep here to simulate a random delay
    Thread.sleep((scala.math.random * 1000).toLong)
    jSyncList.add(e)
}
jSyncList.toArray.foreach(println)

Есть ли более эффективные способы обработки чего-либо с помощью параллельных коллекций и накопления результатов в другом месте?

5
задан Geo 7 May 2011 в 11:51
поделиться