BTDB.KVDBLayer.InMemoryKeyValueDB.CommitWrittingTransaction C# (CSharp) Méthode

CommitWrittingTransaction() private méthode

private CommitWrittingTransaction ( IBTreeRootNode btreeRoot ) : void
btreeRoot IBTreeRootNode
Résultat void
        internal void CommitWrittingTransaction(IBTreeRootNode btreeRoot)
        {
            lock (_writeLock)
            {
                _writingTransaction = null;
                _lastCommited = btreeRoot;
                TryDequeWaiterForWrittingTransaction();
            }
        }

Usage Example

        public void Commit()
        {
            if (BtreeRoot == null)
            {
                throw new BTDBException("Transaction already commited or disposed");
            }
            InvalidateCurrentKey();
            var currentBtreeRoot = _btreeRoot;

            _btreeRoot = null;
            if (_preapprovedWritting)
            {
                _preapprovedWritting = false;
                _keyValueDB.RevertWrittingTransaction();
            }
            else if (_writting)
            {
                _keyValueDB.CommitWrittingTransaction(currentBtreeRoot);
                _writting = false;
            }
        }