Example #1
0
            }     // end Redeem()

            public void CommitTransfer()
            {
                lock ( m_syncRoot )
                {
                    if (null == m_source)
                    {
                        throw new InvalidOperationException("Transfer already committed.");
                    }

                    m_transferred = m_source._CompleteTransfer();
                    m_source      = null;

                    // The thread that will Redeem() the transfer may or may not be
                    // waiting. If it is, signal it:
                    Monitor.PulseAll(m_syncRoot);
                } // end lock
            }     // end CommitTransfer()