コード例 #1
0
            public PriorityQueueEnumerator(LPriorityQueue pqOwner)
            {
                owner   = pqOwner;
                version = pqOwner.version;
                head    = pqOwner.header;

                Reset();
            }
コード例 #2
0
ファイル: PriorityQueue.cs プロジェクト: nhede/WhiteCore-Dev
            public PriorityQueueEnumerator(LPriorityQueue owner)
            {
                this.owner   = owner;
                this.version = owner.version;
                head         = owner.header;

                Reset();
            }
コード例 #3
0
ファイル: PriorityQueue.cs プロジェクト: nhede/WhiteCore-Dev
        /// <summary>
        ///     Returns a synchronized wrapper of the specified PriorityQueue.
        /// </summary>
        /// <param name="queue">
        ///     The PriorityQueue to synchronize.
        /// </param>
        /// <returns>
        ///     A synchronized PriorityQueue.
        /// </returns>
        /// <exception cref="ArgumentNullException">
        ///     If queue is null.
        /// </exception>
        public static LPriorityQueue Synchronized(LPriorityQueue queue)
        {
            #region Require

            if (queue == null)
            {
                throw new ArgumentNullException("queue");
            }

            #endregion

            return(new SynchronizedPriorityQueue(queue));
        }
コード例 #4
0
        /// <summary>
        ///     Returns a synchronized wrapper of the specified PriorityQueue.
        /// </summary>
        /// <param name="queue">
        ///     The PriorityQueue to synchronize.
        /// </param>
        /// <returns>
        ///     A synchronized PriorityQueue.
        /// </returns>
        /// <exception cref="ArgumentNullException">
        ///     If queue is null.
        /// </exception>
        public static LPriorityQueue Synchronized(LPriorityQueue queue)
        {
            #region Require

            if (queue == null)
            {
                MainConsole.Instance.Warn("[Priority Queue]: Queue is null");
                return(null);
            }

            #endregion

            return(new SynchronizedPriorityQueue(queue));
        }
コード例 #5
0
ファイル: PriorityQueue.cs プロジェクト: nhede/WhiteCore-Dev
            public SynchronizedPriorityQueue(LPriorityQueue queue)
            {
                #region Require

                if (queue == null)
                {
                    throw new ArgumentNullException("queue");
                }

                #endregion

                this.queue = queue;

                root = queue.SyncRoot;
            }
コード例 #6
0
            public SynchronizedPriorityQueue(LPriorityQueue queue)
            {
                #region Require

                if (queue == null)
                {
                    MainConsole.Instance.Error("[Priority Queue]: Queue is null");
                    return;
                }

                #endregion

                this.queue = queue;

                root = queue.SyncRoot;
            }