コード例 #1
0
        public static unsafe string GetWriterName(AtomicSafetyHandle handle)
        {
            char *c = AtomicSafetyHandle_GetWriterName(&handle);

            ExceptionReporter.Check();
            return(new string(c));
        }
コード例 #2
0
        public unsafe static EnforceJobResult EnforceAllBufferJobsHaveCompletedAndRelease(AtomicSafetyHandle handle)
        {
            var result = (EnforceJobResult)AtomicSafetyHandle_EnforceAllBufferJobsHaveCompletedAndRelease(&handle);

            ExceptionReporter.Check();
            return(result);
        }
コード例 #3
0
        public static unsafe string GetReaderName(AtomicSafetyHandle handle, int readerIndex)
        {
            char *c = AtomicSafetyHandle_GetReaderName(&handle, readerIndex);

            ExceptionReporter.Check();
            return(new string(c));
        }
コード例 #4
0
 private static unsafe void PatchLocal(ref AtomicSafetyHandle handle)
 {
     fixed(AtomicSafetyHandle *ptr = &handle)
     {
         AtomicSafetyHandle_PatchLocal(ptr);
         ExceptionReporter.Check();
     }
 }
コード例 #5
0
        public unsafe JobHandle GetWriter()
        {
            JobHandle handle = default;

            fixed(AtomicSafetyHandle *ash = &this)
            {
                AtomicSafetyHandle_GetWriter(ash, &handle);
            }

            ExceptionReporter.Check();
            return(handle);
        }
コード例 #6
0
        public unsafe int GetReaderArray(int maxCount, JobHandle *handles)
        {
            int result = 0;

            fixed(AtomicSafetyHandle *ash = &this)
            {
                result = AtomicSafetyHandle_GetReaderArray(ash, maxCount, handles);
            }

            ExceptionReporter.Check();
            return(result);
        }
コード例 #7
0
 public unsafe static void CheckGetSecondaryDataPointerAndThrow(AtomicSafetyHandle handle)
 {
     AtomicSafetyHandle_CheckGetSecondaryDataPointerAndThrow(&handle);
     ExceptionReporter.Check();
 }
コード例 #8
0
 public unsafe static void CheckDisposeAndThrow(AtomicSafetyHandle handle)
 {
     AtomicSafetyHandle_CheckDisposeAndThrow(&handle);
     ExceptionReporter.Check();
 }
コード例 #9
0
 public unsafe static void Release(AtomicSafetyHandle handle)
 {
     AtomicSafetyHandle_Release(&handle);
     ExceptionReporter.Check();
 }