System.Transactions.VolatileDemultiplexer.InternalRollback C# (CSharp) Method

InternalRollback() protected abstract method

protected abstract InternalRollback ( ) : void
return void
        protected abstract void InternalRollback();

Usage Example

Example #1
0
        protected static void PoolableRollback(object state)
        {
            VolatileDemultiplexer demultiplexer = (VolatileDemultiplexer)state;
            bool lockTaken = false;

            try
            {
                Monitor.TryEnter(demultiplexer.transaction, 250, ref lockTaken);
                if (lockTaken)
                {
                    demultiplexer.InternalRollback();
                }
                else if (!ThreadPool.QueueUserWorkItem(RollbackCallback, demultiplexer))
                {
                    throw TransactionException.CreateInvalidOperationException(System.Transactions.SR.GetString("TraceSourceLtm"), System.Transactions.SR.GetString("UnexpectedFailureOfThreadPool"), null);
                }
            }
            finally
            {
                if (lockTaken)
                {
                    Monitor.Exit(demultiplexer.transaction);
                }
            }
        }
All Usage Examples Of System.Transactions.VolatileDemultiplexer::InternalRollback