protected override void Dispose(bool disposing) { if (_handle == IntPtr.Zero) { return; } if (disposing) { // Clear interop cache foreach (var v in _interopCache) { if (v is IDisposable dsp) { dsp.Dispose(); } } _interopCache.Clear(); } // free unmanaged resources (unmanaged objects) and override a finalizer below. set large fields to null. _resultStack.Dispose(); _invocationStack.Dispose(); NeoVM.ExecutionEngine_Free(ref _handle); }
protected override void Dispose(bool disposing) { if (Handle == IntPtr.Zero) { return; } // free unmanaged resources (unmanaged objects) and override a finalizer below. set large fields to null. _AltStack.Dispose(); _EvaluationStack.Dispose(); NeoVM.ExecutionContext_Free(ref Handle); }