Ejemplo n.º 1
0
    public void ParallelIncrement()
    {
        var counter = new NativePerThreadCounter(Allocator.Temp);
        var jobData = new ParallelCountTo();

        jobData.counter = counter.ToConcurrent();
        // Count every second item
        jobData.countMask = 1;
        jobData.Schedule(1000000, 1).Complete();
        Assert.AreEqual(500000, counter.Count);
        counter.Dispose();
    }
Ejemplo n.º 2
0
    public void ConcurrentIncrement()
    {
        var counter           = new NativePerThreadCounter(Allocator.Temp);
        var concurrentCounter = counter.ToConcurrent();

        Assert.AreEqual(0, counter.Count);
        concurrentCounter.Increment();
        Assert.AreEqual(1, counter.Count);
        concurrentCounter.Increment();
        concurrentCounter.Increment();
        Assert.AreEqual(3, counter.Count);
        counter.Dispose();
    }