IOPacketQueue
Реализует ограниченную очередь FIFO mbuf пакетов.
Пакеты удалены от главы очереди (двухсторонняя очередь), и новые пакеты добавляются к хвосту очереди (ставят в очередь). Спин-блокировка используется для синхронизации доступа к очереди между методами, имеющими префикс «блокировки».
Наследование
Не применимый
Соответствует
Не применимый
Оператор импорта
Не применимый
Objective C
@import Kernel;
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет единственный пакет от главы очереди.
Объявление
C++
virtual mbuf_t dequeue();
Возвращаемое значение
Если очередь была пуста, возвращает пакет, удаленный от главы очереди или NULL.
-
Удаляет все пакеты из очереди и возвращает верхнюю часть пакетной цепочки.
Объявление
C++
virtual mbuf_t dequeueAll();
Возвращаемое значение
Возвращает верхнюю часть пакетной цепочки соединение всех пакетов, сохраненных в очереди или NULL, если очередь была пуста.
Обсуждение
Размер очереди очищен для обнуления.
-
Удаляет все пакеты из указанной очереди и добавляет их к хвосту этой очереди.
Объявление
C++
virtual bool enqueue( IOPacketQueue *
queue
);Параметры
queue
Источник объект IOPacketQueue, содержащий пакеты, которые будут переданы.
Возвращаемое значение
Всегда возвращает true.
-
Добавляет цепочка пакетов к хвосту очереди.
Объявление
C++
virtual bool enqueue( mbuf_t
m
);Параметры
m
Цепочка пакетов для добавления к хвосту очереди.
Возвращаемое значение
Возвращает true на успехе или ложь для указания избыточной мощности и отказа принять пакетную предоставленную цепочку.
Обсуждение
Если размер очереди достиг своей способности, пакеты не добавляются.
-
Добавляет цепочка пакетов к хвосту очереди.
Объявление
C++
virtual UInt32 enqueueWithDrop( mbuf_t
m
);Параметры
m
Цепочка пакетов для добавления к хвосту очереди.
Возвращаемое значение
Возвращает число пакетов, отброшенных и освобожденных очередью.
Обсуждение
Если размер очереди достиг своей способности, пакеты отбрасываются.
-
Освобождает все пакеты, в настоящее время сохраненные в очереди, и выпускает их назад к свободному пулу mbuf.
Объявление
C++
virtual UInt32 flush();
Возвращаемое значение
Возвращает число освобожденных пакетов.
Обсуждение
Размер очереди очищен для обнуления.
-
Освобождает объект IOPacketQueue.
Объявление
C++
virtual void free();
Обсуждение
Все пакеты, сохраненные очередью, выпущены назад к свободному пулу, ресурс освобождены, тогда супер:: свободный () вызывается.
-
Получает токовую нагрузку очереди.
Объявление
C++
virtual UInt32 getCapacity() const;
Возвращаемое значение
Возвращает текущую способность очереди.
-
Получает размер очереди.
Объявление
C++
virtual UInt32 getSize() const;
Возвращаемое значение
Возвращает число пакетов, в настоящее время сохраненных очередью.
-
Инициализирует объект IOPacketQueue.
Объявление
C++
virtual bool initWithCapacity( UInt32 capacity =
capacity
);Параметры
capacity
Начальная способность очереди. Может быть позже изменен путем вызова setCapacity () метод.
Возвращаемое значение
Возвращает true, если инициализировано успешно, ложь иначе.
Обсуждение
Этот метод инициализирует объект IOPacketQueue с данной способностью.
-
Удаляет единственный пакет от главы синхронизируемой очереди.
Объявление
C++
virtual mbuf_t lockDequeue();
Возвращаемое значение
Если очередь была пуста, возвращает пакет, удаленный от главы очереди или NULL.
Обсуждение
Спин-блокировка используется для синхронизации доступа к очереди.
-
Удаляет все пакеты из синхронизируемой очереди и возвращает верхнюю часть пакетной цепочки.
Объявление
C++
virtual mbuf_t lockDequeueAll();
Возвращаемое значение
Возвращает верхнюю часть пакетной цепочки соединение всех пакетов, сохраненных в очереди или NULL, если очередь была пуста.
Обсуждение
Размер очереди очищен для обнуления. Спин-блокировка используется для синхронизации доступа к очереди.
-
Добавляет цепочка пакетов к хвосту синхронизируемой очереди.
Объявление
C++
virtual bool lockEnqueue( mbuf_t
m
);Параметры
m
Цепочка пакетов для добавления к хвосту очереди.
Возвращаемое значение
Возвращает true на успехе или ложь для указания избыточной мощности и отказа принять пакетную предоставленную цепочку.
Обсуждение
Если размер очереди достиг своей способности, пакеты не добавляются. Спин-блокировка используется для синхронизации доступа к очереди.
-
Добавляет цепочка пакетов к хвосту синхронизируемой очереди.
Объявление
C++
virtual UInt32 lockEnqueueWithDrop( mbuf_t
m
);Параметры
m
Цепочка пакетов для добавления к хвосту очереди.
Возвращаемое значение
Возвращает число пакетов, отброшенных и освобожденных очередью.
Обсуждение
Если размер очереди достиг своей способности, пакеты отбрасываются. Спин-блокировка используется для синхронизации доступа к очереди.
-
Освобождает все пакеты, в настоящее время сохраненные в синхронизируемой очереди, и выпускает их назад к свободному пулу mbuf.
Объявление
C++
virtual UInt32 lockFlush();
Возвращаемое значение
Возвращает число освобожденных пакетов.
Обсуждение
Размер очереди очищен для обнуления. Спин-блокировка используется для синхронизации доступа к очереди.
-
Добавляет цепочка пакетов главе синхронизируемой очереди.
Объявление
C++
virtual void lockPrepend( mbuf_t
m
);Параметры
m
Цепочка пакетов, чтобы добавить к главе очереди.
Возвращаемое значение
Всегда возвращает true.
Обсуждение
Спин-блокировка используется для синхронизации доступа к очереди.
-
Исследует пакет во главе очереди, не удаляя его из очереди.
Объявление
C++
virtual const mbuf_t peek() const;
Возвращаемое значение
Возвращает пакет во главе очереди.
Обсуждение
Следующий вызов для заглядывания () или двухсторонняя очередь () возвратит тот же пакет. Вызывающая сторона никогда не должна изменять mbuf возвращенный пакет.
-
Удаляет все пакеты из указанной очереди и добавляет их к главе этой очереди.
Объявление
C++
virtual void prepend( IOPacketQueue *
queue
);Параметры
queue
Источник объект IOPacketQueue, содержащий пакеты, которые будут переданы.
-
Добавляет цепочка пакетов главе очереди.
Объявление
C++
virtual void prepend( mbuf_t
m
);Параметры
m
Цепочка пакетов, чтобы добавить к главе очереди.
-
Изменяет способность очереди.
Объявление
C++
virtual bool setCapacity( UInt32
capacity
);Параметры
capacity
Новая способность.
Возвращаемое значение
Если новая способность была принята, ложь иначе, возвращает true.
-
Метод фабрики, создающий и инициализирующий объект IOPacketQueue.
Объявление
C++
static IOPacketQueue * withCapacity( UInt32 capacity =
capacity
);Параметры
capacity
Начальная способность объекта очереди. Может быть позже изменен путем вызова setCapacity () метод.
Возвращаемое значение
Возвращает экземпляр IOPacketQueue на успехе, или 0 иначе.
IOPacketQueueDefaultCapacity
IOPacketQueueDefaultCapacity
Описывает способность по умолчанию объекта очереди.
Способность только наблюдается тем, чтобы ставить в очередь () метод. Поэтому для размера очереди возможно превысить свою способность, когда другие методы, те, которые предварительно ожидают (), используются, чтобы добавить пакеты к очереди.
-
Зарезервированный для будущего использования. (Только внутреннее использование)
Объявление
C++
ExpansionData *_reserved;
-
Зарезервированный для будущего использования. (Только внутреннее использование)
Объявление
C++
ExpansionData *_reserved;