Esempio n. 1
0
            private void OnDispose()
            {
                var transaction = CurrentTransaction;

                if (transaction != null)
                {
                    if (transaction._lockSlot != null)
                    {
                        _needleLock.Release(transaction._lockSlot);
                    }
                    _needleLock.Release();
                    transaction._readLog.Remove(this);
                    transaction._writeLog.Remove(this);
                }
            }
Esempio n. 2
0
        private void OnDispose()
        {
            var transaction = Transact.CurrentTransaction;

            if (transaction == null)
            {
                return;
            }

            if (transaction.LockSlot != null)
            {
                _needleLock.Release(transaction.LockSlot);
            }
            _needleLock.Release();
            transaction.ReadLog.Remove(this);
            transaction.WriteLog.Remove(this);
        }
Esempio n. 3
0
            private void OnDispose()
            {
                var transaction = CurrentTransaction;

                if (transaction != null)
                {
                    if (!ReferenceEquals(transaction._lockSlot, null))
                    {
                        _needleLock.Uncapture(transaction._lockSlot);
                    }
                    _needleLock.Release();
                    transaction._readLog.Remove(this);
                    transaction._writeLog.Remove(this);
                }
            }