Mercurial > pub > ImplabNet
comparison Implab.Test/AsyncTests.cs @ 24:ee04e1fa78da
fixed dispatch pool race condition
author | cin |
---|---|
date | Thu, 14 Nov 2013 01:15:07 +0400 |
parents | 5a35900264f5 |
children | 2fad2d1f4b03 |
comparison
equal
deleted
inserted
replaced
23:f0568ff069a5 | 24:ee04e1fa78da |
---|---|
242 } | 242 } |
243 | 243 |
244 [TestMethod] | 244 [TestMethod] |
245 public void ChainedMapTest() { | 245 public void ChainedMapTest() { |
246 | 246 |
247 using (var pool = new WorkerPool(4,4,0)) { | 247 using (var pool = new WorkerPool(0,100,0)) { |
248 int count = 10000; | 248 int count = 10000; |
249 | 249 |
250 double[] args = new double[count]; | 250 double[] args = new double[count]; |
251 var rand = new Random(); | 251 var rand = new Random(); |
252 | 252 |
253 for (int i = 0; i < count; i++) | 253 for (int i = 0; i < count; i++) |
254 args[i] = rand.NextDouble(); | 254 args[i] = rand.NextDouble(); |
255 | 255 |
256 var t = Environment.TickCount; | 256 var t = Environment.TickCount; |
257 var res = args | 257 var res = args |
258 .ChainedMap( | 258 .ChainedMap2( |
259 x => pool.Invoke( | 259 x => pool.Invoke( |
260 () => Math.Sin(x * x) | 260 () => Math.Sin(x * x) |
261 ), | 261 ), |
262 4 | 262 4 |
263 ) | 263 ) |