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() - Переміщує вказану кількість байтів з вихідного буфера до кінця поточного буфера