示例#1
0
        /// <inheritdoc cref="CtxDestroy(CuContext)"/>
        public void Dispose()
        {
            var handle = Interlocked.Exchange(ref Handle, IntPtr.Zero);

            if (handle == IntPtr.Zero)
            {
                return;
            }
            var obj = new CuContext {
                Handle = handle
            };

            CtxDestroy(obj);
        }
示例#2
0
 public static extern CuResult CtxLockCreate(out CuVideoContextLock pLock, CuContext ctx);
示例#3
0
 internal CuContextPush(CuContext context)
 {
     _context  = context;
     _disposed = 0;
 }
示例#4
0
 public static extern CuResult CtxDetach(CuContext ctx);
示例#5
0
 public static extern CuResult CtxCreate(out CuContext pctx, CuContextFlags flags, CuDevice dev);
示例#6
0
 public static extern CuResult CtxAttach(out CuContext pctx, CuContextFlags flags);
示例#7
0
 public static extern CuResult CtxGetCurrent(out CuContext pctx);
示例#8
0
 public static extern CuResult CtxGetApiVersion(CuContext ctx, out uint version);
示例#9
0
 public static extern CuResult CtxSetCurrent(CuContext ctx);
示例#10
0
 public static extern CuResult CtxDestroy(CuContext ctx);
示例#11
0
 public static extern CuResult CtxDisablePeerAccess(CuContext peerContext);
示例#12
0
 public static extern CuResult CtxEnablePeerAccess(CuContext peerContext, int flags = 0);
示例#13
0
 public static extern CuResult DevicePrimaryCtxRetain(out CuContext pctx, CuDevice dev);