Esempio n. 1
0
 public void interrupt()
 {
     Debug.Assert(dispatcher != null);
     for (NativeContext *context = contextGroup.firstContext; context != null; context = context.groupNext)
     {
         dispatcher.interrupt(context);
     }
 }
Esempio n. 2
0
        //~Context() { V8NetProxy.DeleteContext(_NativeContext); _NativeContext = null; }

        public void Dispose()
        {
            if (_NativeContext != null)
            {
                V8NetProxy.DeleteContext(_NativeContext);
            }
            _NativeContext = null;
        }
Esempio n. 3
0
//C++ TO C# CONVERTER TODO TASK: C# has no equivalent to ' = delete':
//  Dispatcher(const Dispatcher&) = delete;
        public void Dispose()
        {
            for (NativeContext *context = contextGroup.firstContext; context != null; context = context.groupNext)
            {
                interrupt(context);
            }

            yield();
            Debug.Assert(contextGroup.firstContext == null);
            Debug.Assert(contextGroup.firstWaiter == null);
            Debug.Assert(firstResumingContext == null);
            Debug.Assert(runningContextCount == 0);
            while (firstReusableContext != null)
            {
                var ucontext = (ucontext_t)firstReusableContext.ucontext;
                var stackPtr = (uint8_t)firstReusableContext.stackPtr;
                firstReusableContext = firstReusableContext.next;
                Arrays.DeleteArray(stackPtr);
                if (ucontext != null)
                {
                    ucontext.Dispose();
                }
            }

            while (timers.Count > 0)
            {
                int result = global::close(timers.Peek());
                if (result != 0)
                {
                }
                Debug.Assert(result == 0);
                timers.Pop();
            }

            var result = close(epoll);

            if (result)
            {
            }
            Debug.Assert(result == 0);
            result = close(remoteSpawnEvent);
            Debug.Assert(result == 0);
//C++ TO C# CONVERTER TODO TASK: There is no equivalent to 'reinterpret_cast' in C#:
            result = pthread_mutex_destroy(reinterpret_cast <pthread_mutex_t>(this.mutex));
            Debug.Assert(result == 0);
        }
Esempio n. 4
0
 public extern static HandleProxy *SetContext64(NativeV8EngineProxy *engine, NativeContext *context);
Esempio n. 5
0
 public extern static NativeContext *DeleteContext64(NativeContext *context);
Esempio n. 6
0
 internal Context(NativeContext *nativeContext)
 {
     _NativeContext = nativeContext;
 }