EventBuffer::pullup

(PECL event >= 1.2.6-beta)

EventBuffer::pullupЛинеаризует данные в буфере и возвращает их содержимое в виде строки

Описание

public EventBuffer::pullup ( int $size ) : string

"Линеаризует" первые size байты буфера, копируя или перемещая их по мере необходимости, чтобы гарантировать, что все они являются смежными и занимают один и тот же кусок памяти. Если размер отрицателен, функция линеаризует весь буфер.

Внимание

Вызов EventBuffer::pullup() с большим размером может быть довольно медленным, поскольку потенциально может потребоваться копирование всего содержимого буфера.

Список параметров

size

Количество байтов должно быть непрерывным в буфере.

Возвращаемые значения

Если size больше, чем количество байтов в буфере, функция возвращает null. В противном случае возвращает строку EventBuffer::pullup().

Смотрите также

  • EventBuffer::copyout() - Копирует указанное количество байтов с начала буфера
  • EventBuffer::drain() - Удаляет указанное количество байтов с начала буфера, никуда не копируя
  • EventBuffer::read() - Читает данные из evbuffer и истощает прочитанные байты
  • EventBuffer::readLine() - Извлекает строку из начала буфера
  • EventBuffer::appendFrom() - Перемещает указанное количество байтов из исходного буфера в конец текущего буфера