示例#1
0
 public BlockRevQueue(Generator s)
 {
     free = new BlockFreeList();
     _outputType = s.outputType();
     s.shareFreeList(this);
     for (; ; )
     {
         RevCommit c = s.next();
         if (c == null)
             break;
         add(c);
     }
 }
示例#2
0
    	protected BlockRevQueue(Generator s)
			: this(s.OutputType)
        {
			_free = new BlockFreeList();
            s.shareFreeList(this);
        
			while(true)
            {
                RevCommit c = s.next();
                if (c == null) break;
                add(c);
            }
        }
        protected BlockRevQueue(Generator s)
            : this(s.OutputType)
        {
            _free = new BlockFreeList();
            s.shareFreeList(this);

            while (true)
            {
                RevCommit c = s.next();
                if (c == null)
                {
                    break;
                }
                add(c);
            }
        }
示例#4
0
 /**
  * Reconfigure this queue to share the same free list as another.
  * <p>
  * Multiple revision queues can be connected to the same free list, making
  * it less expensive for applications to shuttle commits between them. This
  * method arranges for the receiver to take from / return to the same free
  * list as the supplied queue.
  * <p>
  * Free lists are not thread-safe. Applications must ensure that all queues
  * sharing the same free list are doing so from only a single thread.
  *
  * @param q
  *            the other queue we will steal entries from.
  */
 public void shareFreeList(BlockRevQueue q)
 {
     free = q.free;
 }
示例#5
0
 /** Create an empty revision queue. */
 public BlockRevQueue()
 {
     free = new BlockFreeList();
 }
示例#6
0
 /** Create an empty queue. */
 public BlockObjQueue()
 {
     free = new BlockFreeList();
 }
示例#7
0
        /// <summary>
        /// Reconfigure this queue to share the same free list as another.
		/// <para />
		/// Multiple revision queues can be connected to the same free list, making
		/// it less expensive for applications to shuttle commits between them. This
		/// method arranges for the receiver to take from / return to the same free
		/// list as the supplied queue.
		/// <para />
		/// Free lists are not thread-safe. Applications must ensure that all queues
		/// sharing the same free list are doing so from only a single thread.
        /// </summary>
		/// <param name="q">the other queue we will steal entries from.</param>
        public override void shareFreeList(BlockRevQueue q)
        {
            _free = q._free;
        }
示例#8
0
        /// <summary>
		/// Create an empty revision queue.
        /// </summary>
    	protected BlockRevQueue(GeneratorOutputType outputType)
			: base(outputType)
        {
            _free = new BlockFreeList();
        }
示例#9
0
 /** Create an empty queue. */
 public BlockObjQueue()
 {
     free = new BlockFreeList();
 }
示例#10
0
 /// <summary>
 /// Reconfigure this queue to share the same free list as another.
 /// <para />
 /// Multiple revision queues can be connected to the same free list, making
 /// it less expensive for applications to shuttle commits between them. This
 /// method arranges for the receiver to take from / return to the same free
 /// list as the supplied queue.
 /// <para />
 /// Free lists are not thread-safe. Applications must ensure that all queues
 /// sharing the same free list are doing so from only a single thread.
 /// </summary>
 /// <param name="q">the other queue we will steal entries from.</param>
 public override void shareFreeList(BlockRevQueue q)
 {
     _free = q._free;
 }
示例#11
0
 /// <summary>
 /// Create an empty revision queue.
 /// </summary>
 protected BlockRevQueue(GeneratorOutputType outputType)
     : base(outputType)
 {
     _free = new BlockFreeList();
 }