Beispiel #1
0
        private static void ThreadedPutNew(SkipListNew skipList)
        {
            var job = _job;

            while (job.TryDequeue(out var value))
            {
                skipList.Put(value, value);
            }
        }
Beispiel #2
0
        public async Task MultiThreadedNew()
        {
            using var simpleAllocator = new NativeAllocator(1024 * 1024 * 5, TableHeight);
            var skipList = new SkipListNew(simpleAllocator);
            var tasks    = new Task[Environment.ProcessorCount];

            for (var i = 0; i < tasks.Length; i++)
            {
                tasks[i] = Task.Run(() => ThreadedPutNew(skipList));
            }
            await Task.WhenAll(tasks);
        }