blob: bc6a67d0e1290c9903b28bc0ea4961441b3d8493 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
import scala.concurrent.{duration, Future, Await, ExecutionContext}
import scala.tools.nsc.Settings
import ExecutionContext.Implicits.global
// Was failing pretty regularly with a ConcurrentModificationException as
// WrappedProperties#systemProperties iterated directly over the mutable
// global system properties map.
object Test {
def main(args: Array[String]): Unit = {
val tries = 1000 // YMMV
val compiler = Future {
for(_ <- 1 to tries) new Settings(_ => {})
}
for(i <- 1 to tries * 10) System.setProperty(s"foo$i", i.toString)
Await.result(compiler, duration.Duration.Inf)
}
}
|