Пример #1
0
 public NativeNodeHost(IntPtr context, NativeApi nativeMethods)
 {
     NativeMethods    = nativeMethods;
     _context         = context;
     _releaseCallback = ReleaseCallbackIntern;
     _scheduler       = new NodeTaskScheduler(context, nativeMethods);
 }
Пример #2
0
        public IntPtr MarshallTask(Task task, out ReleaseDotNetValue releaseCallback)
        {
            var holder = new TaskHolder(task, this);

            _taskRegistry.Add(holder.CallbackPtr, holder);
            releaseCallback = ReleaseTaskCallback;
            return(holder.CallbackPtr);
        }
Пример #3
0
        public IntPtr MarshallCallback(DotNetCallback callback, out ReleaseDotNetValue releaseCallback)
        {
            var holder = new CallbackHolder(callback, this);

            _registry.Add(holder.CallbackPtr, holder);
            releaseCallback = ReleaseCallback;
            return(holder.CallbackPtr);
        }