public void ScheduleWriteParallelRead() { int w = 40; int h = 15; var console = new NativeConsole(w, h); string str = "Hello"; var jobs = console.SchedulePrint(0, 0, str); NativeArray <JobHandle> readJobs = new NativeArray <JobHandle>(5, Allocator.TempJob); List <NativeArray <Tile> > buffers = new List <NativeArray <Tile> >(); for (int i = 0; i < 5; ++i) { buffers.Add(new NativeArray <Tile>(5, Allocator.TempJob)); var readJob = console.ScheduleReadTiles(0, 0, 5, buffers[i], jobs); readJobs[i] = readJob; } jobs = JobHandle.CombineDependencies(readJobs); readJobs.Dispose(); jobs.Complete(); for (int i = 0; i < 5; ++i) { Assert.AreEqual('H', ToChar(buffers[i][0].glyph)); Assert.AreEqual('e', ToChar(buffers[i][1].glyph)); Assert.AreEqual('l', ToChar(buffers[i][2].glyph)); Assert.AreEqual('l', ToChar(buffers[i][3].glyph)); Assert.AreEqual('o', ToChar(buffers[i][4].glyph)); } for (int i = 0; i < buffers.Count; ++i) { buffers[i].Dispose(); } console.Dispose(); }