Exemplo n.º 1
0
        public virtual IntComboListEnumerator[] GetEnumerators()
        {
            if (!didopen)
            {
                throw new Exception("Attempted to GetEnumerators before Open");
            }

            IntComboListEnumerator[] results;
            lock (dslaves)
            {
                byte enumid = nextenumid;
                if (nextenumid >= 32)
                {
                    nextenumid = 0;
                }
                else
                {
                    nextenumid++;
                }

                int i;
                results = new IntComboListEnumerator[dslaves.Count];

                i = 0;
                foreach (SlaveInfo _slave in dslaves)
                {
                    BufSlaveInfo slave = (BufSlaveInfo)_slave;
                    if (addbufinitsize > 0)
                    {
                        lock (slave)
                        {
                            slave.FlushAddBuf_unlocked();
                        }
                    }
                    results[i]     = new IntComboListEnumerator(slave, enumid);
                    results[i].buf = this.buf; // Not needed, but fine.
                    i++;
                }
            }
            return(results);
        }
Exemplo n.º 2
0
 public override IntComboListEnumerator[] GetEnumerators()
 {
     IntComboListEnumerator[] result = new IntComboListEnumerator[1];
     result[0] = new IntComboListLocalEnumerator(b8list.GetEnumerator());
     return result;
 }
Exemplo n.º 3
0
 public override IntComboListEnumerator[] GetEnumerators()
 {
     IntComboListEnumerator[] result = new IntComboListEnumerator[1];
     result[0] = new IntComboListLocalEnumerator(b8list.GetEnumerator());
     return(result);
 }
Exemplo n.º 4
0
        public virtual IntComboListEnumerator[] GetEnumerators()
        {
            if (!didopen)
            {
                throw new Exception("Attempted to GetEnumerators before Open");
            }

            IntComboListEnumerator[] results;
            lock (dslaves)
            {
                byte enumid = nextenumid;
                if (nextenumid >= 32)
                    nextenumid = 0;
                else
                    nextenumid++;

                int i;
                results = new IntComboListEnumerator[dslaves.Count];

                i = 0;
                foreach (SlaveInfo _slave in dslaves)
                {
                    BufSlaveInfo slave = (BufSlaveInfo)_slave;
                    if (addbufinitsize > 0)
                    {
                        lock (slave)
                        {
                            slave.FlushAddBuf_unlocked();
                        }
                    }
                    results[i] = new IntComboListEnumerator(slave, enumid);
                    results[i].buf = this.buf; // Not needed, but fine.
                    i++;
                }
            }
            return results;
        }