diff options
author | Aleksandar Prokopec <axel22@gmail.com> | 2012-02-15 15:37:42 +0100 |
---|---|---|
committer | Aleksandar Prokopec <axel22@gmail.com> | 2012-02-15 15:38:06 +0100 |
commit | fe6c9e3f1693f2e6db5ae69517893894bbac6afb (patch) | |
tree | f90deb499f8ffa009eb26e55ce7c233098b010cc /test/files/run/ctries | |
parent | ada6771679aa63e8aa57a294dfb268b2a7a32df4 (diff) | |
download | scala-fe6c9e3f1693f2e6db5ae69517893894bbac6afb.tar.gz scala-fe6c9e3f1693f2e6db5ae69517893894bbac6afb.tar.bz2 scala-fe6c9e3f1693f2e6db5ae69517893894bbac6afb.zip |
Add parallel size computation for ParCtrie.
Also modified size computation for Ctrie so that concurrent
`size` invocations can be parallelized more efficiently.
Diffstat (limited to 'test/files/run/ctries')
-rw-r--r-- | test/files/run/ctries/concmap.scala | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/files/run/ctries/concmap.scala b/test/files/run/ctries/concmap.scala index 85a305ce5b..d73e33182a 100644 --- a/test/files/run/ctries/concmap.scala +++ b/test/files/run/ctries/concmap.scala @@ -164,6 +164,25 @@ object ConcurrentMapSpec extends Spec { for (i <- 0 until sz) assertEqual(ct.get(new Wrap(i)), None) } + "compute size correctly" in { + val ct = new Ctrie[Wrap, Int] + val sz = 36450 + for (i <- 0 until sz) ct(new Wrap(i)) = i + + assertEqual(ct.size, sz) + assertEqual(ct.size, sz) + } + + "compute size correctly in parallel" in { + val ct = new Ctrie[Wrap, Int] + val sz = 36450 + for (i <- 0 until sz) ct(new Wrap(i)) = i + val pct = ct.par + + assertEqual(pct.size, sz) + assertEqual(pct.size, sz) + } + } } |