<?php
include_once $_SERVER['DOCUMENT_ROOT'] . '/include/shared-manual.inc';
$TOC = array();
$TOC_DEPRECATED = array();
$PARENTS = array();
include_once dirname(__FILE__) ."/toc/book.event.inc";
$setup = array (
  'home' => 
  array (
    0 => 'index.php',
    1 => 'PHP Manual',
  ),
  'head' => 
  array (
    0 => 'UTF-8',
    1 => 'ru',
  ),
  'this' => 
  array (
    0 => 'class.eventbufferevent.php',
    1 => 'EventBufferEvent',
    2 => 'Класс EventBufferEvent',
  ),
  'up' => 
  array (
    0 => 'book.event.php',
    1 => 'Event',
  ),
  'prev' => 
  array (
    0 => 'eventbuffer.write.php',
    1 => 'EventBuffer::write',
  ),
  'next' => 
  array (
    0 => 'eventbufferevent.close.php',
    1 => 'EventBufferEvent::close',
  ),
  'alternatives' => 
  array (
  ),
  'source' => 
  array (
    'lang' => 'ru',
    'path' => 'reference/event/eventbufferevent.xml',
  ),
  'history' => 
  array (
  ),
  'extra_header_links' => 
  array (
    'rel' => 'alternate',
    'href' => '/manual/en/feeds/class.eventbufferevent.atom',
    'type' => 'application/atom+xml',
  ),
);
$setup["toc"] = $TOC;
$setup["toc_deprecated"] = $TOC_DEPRECATED;
$setup["parents"] = $PARENTS;
manual_setup($setup);

contributors($setup);

?>
<div id="class.eventbufferevent" class="reference">
 <h1 class="title">Класс EventBufferEvent</h1>
 
 <div class="partintro"><p class="verinfo">(PECL event &gt;= 1.2.6-beta)</p>
  
  <div class="section" id="eventbufferevent.intro">
   <h2 class="title">Введение</h2>
   <p class="para">
    Класс представляет буферизированное событие Libevent.
   </p>
   <p class="para">
    В дополнение к реагированию на события
    приложение часто буферизирует часть
    данных. В ситуациях, при которых требуется записать данные,
    стандартный алгоритм записи выглядит так:
   </p>
   <ol type="1">
    <li class="listitem">
     <p class="para">
      Решается, что требуется записать часть данных в соединение; данные складываются
      в буфер
     </p>
    </li>
    <li class="listitem">
     <p class="para">
      Ожидается, когда соединение станет доступным для записи.
     </p>
    </li>
    <li class="listitem">
     <p class="para">
      Записывается столько данных, сколько получится.
     </p>
    </li>
    <li class="listitem">
     <p class="para">
      Запоминается, сколько данных записалось и, если остались недозаписанные данные,
      выжидается, когда соединение снова станет доступно для записи.
     </p>
    </li>
   </ol>
   <p class="para">
    Этот шаблон буферизированного ввода-вывода настолько распространён, что
    библиотека Libevent предоставляет встроенный механизм для него.
    «Буферизированное событие» состоит из транспорта, например сокета,
    буфера чтения и буфера записи. В отличие от стандартных событий, которые
    вызывают callback-функцию, когда транспорт становится доступен для
    чтения или записи, буферизованное событие вызывает функцию обратного
    вызова после считывания или записи достаточного количества данных.
   </p>
  </div>
  
  <div class="section" id="eventbufferevent.synopsis">
   <h2 class="title">Обзор класса</h2>

   
   <div class="classsynopsis">
    <span class="ooclass">
     <strong class="classname"></strong>
    </span>
    
    <div class="classsynopsisinfo">
     <span class="ooclass">
      <span class="modifier">final</span>
      <span class="modifier">class</span> <strong class="classname">EventBufferEvent</strong>
     </span>
     {</div>
    
    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Константы */</div>
    <div class="fieldsynopsis">
     <span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.reading"><var class="varname">READING</var></a></var><span class="initializer"> = 1</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.writing"><var class="varname">WRITING</var></a></var><span class="initializer"> = 2</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.eof"><var class="varname">EOF</var></a></var><span class="initializer"> = 16</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.error"><var class="varname">ERROR</var></a></var><span class="initializer"> = 32</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.timeout"><var class="varname">TIMEOUT</var></a></var><span class="initializer"> = 64</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.connected"><var class="varname">CONNECTED</var></a></var><span class="initializer"> = 128</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-close-on-free"><var class="varname">OPT_CLOSE_ON_FREE</var></a></var><span class="initializer"> = 1</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-threadsafe"><var class="varname">OPT_THREADSAFE</var></a></var><span class="initializer"> = 2</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-defer-callbacks"><var class="varname">OPT_DEFER_CALLBACKS</var></a></var><span class="initializer"> = 4</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-unlock-callbacks"><var class="varname">OPT_UNLOCK_CALLBACKS</var></a></var><span class="initializer"> = 8</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.ssl-open"><var class="varname">SSL_OPEN</var></a></var><span class="initializer"> = 0</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.ssl-connecting"><var class="varname">SSL_CONNECTING</var></a></var><span class="initializer"> = 1</span>;</div>

    <div class="fieldsynopsis"><span class="modifier">const</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="fieldsynopsis_varname"><a href="class.eventbufferevent.php#eventbufferevent.constants.ssl-accepting"><var class="varname">SSL_ACCEPTING</var></a></var><span class="initializer"> = 2</span>;</div>

    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Свойства */</div>
    <div class="fieldsynopsis"><span class="modifier">public</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="varname"><a href="class.eventbufferevent.php#eventbufferevent.props.fd">$<var class="varname">fd</var></a></var>;</div>

    <div class="fieldsynopsis"><span class="modifier">public</span>
     <span class="type"><a href="language.types.integer.php" class="type int">int</a></span>
      <var class="varname"><a href="class.eventbufferevent.php#eventbufferevent.props.priority">$<var class="varname">priority</var></a></var>;</div>

    <div class="fieldsynopsis"><span class="modifier">public</span>
     <span class="modifier">readonly</span>
     <span class="type"><a href="class.eventbuffer.php" class="type EventBuffer">EventBuffer</a></span>
      <var class="varname"><a href="class.eventbufferevent.php#eventbufferevent.props.input">$<var class="varname">input</var></a></var>;</div>

    <div class="fieldsynopsis"><span class="modifier">public</span>
     <span class="modifier">readonly</span>
     <span class="type"><a href="class.eventbuffer.php" class="type EventBuffer">EventBuffer</a></span>
      <var class="varname"><a href="class.eventbufferevent.php#eventbufferevent.props.output">$<var class="varname">output</var></a></var>;</div>

    <div class="classsynopsisinfo classsynopsisinfo_comment">/* Методы */</div>
    <div class="methodsynopsis dc-description">
   <span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.close.php" class="methodname">close</a></span>(): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.connect.php" class="methodname">connect</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$addr</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.connecthost.php" class="methodname">connectHost</a></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="class.eventdnsbase.php" class="type EventDnsBase">EventDnsBase</a></span> <code class="parameter">$dns_base</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$hostname</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$port</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$family</code>
    <span class="initializer"> = EventUtil::AF_UNSPEC</span>
   </span><br>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.construct.php" class="methodname">__construct</a></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="class.eventbase.php" class="type EventBase">EventBase</a></span> <code class="parameter">$base</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span> <code class="parameter">$socket</code>
    <span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$options</code>
    <span class="initializer"> = 0</span>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.callable.php" class="type callable">callable</a></span> <code class="parameter">$readcb</code>
    <span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.callable.php" class="type callable">callable</a></span> <code class="parameter">$writecb</code>
    <span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.callable.php" class="type callable">callable</a></span> <code class="parameter">$eventcb</code>
    <span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span> <code class="parameter">$arg</code>
    <span class="initializer"> = <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong></span>
   </span><br>)</div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="modifier">static</span>
   <span class="methodname"><a href="eventbufferevent.createpair.php" class="methodname">createPair</a></span>(<span class="methodparam">
    
    <span class="type"><a href="class.eventbase.php" class="type EventBase">EventBase</a></span> <code class="parameter">$base</code>
   </span>, <span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$options</code>
    <span class="initializer"> = 0</span>
   </span>): <span class="type"><a href="language.types.array.php" class="type array">array</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.disable.php" class="methodname">disable</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$events</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.enable.php" class="methodname">enable</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$events</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.free.php" class="methodname">free</a></span>(): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.getdnserrorstring.php" class="methodname">getDnsErrorString</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.getenabled.php" class="methodname">getEnabled</a></span>(): <span class="type"><a href="language.types.integer.php" class="type int">int</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.getinput.php" class="methodname">getInput</a></span>(): <span class="type"><a href="class.eventbuffer.php" class="type EventBuffer">EventBuffer</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.getoutput.php" class="methodname">getOutput</a></span>(): <span class="type"><a href="class.eventbuffer.php" class="type EventBuffer">EventBuffer</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.read.php" class="methodname">read</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$size</code>
   </span>): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.readbuffer.php" class="methodname">readBuffer</a></span>(<span class="methodparam">
    
    <span class="type"><a href="class.eventbuffer.php" class="type EventBuffer">EventBuffer</a></span> <code class="parameter">$buf</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.setcallbacks.php" class="methodname">setCallbacks</a></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.callable.php" class="type callable">callable</a></span> <code class="parameter">$readcb</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.callable.php" class="type callable">callable</a></span> <code class="parameter">$writecb</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.callable.php" class="type callable">callable</a></span> <code class="parameter">$eventcb</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span> <code class="parameter">$arg</code>
   <span class="initializer"> = ?</span></span><br>): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.setpriority.php" class="methodname">setPriority</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$priority</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.settimeouts.php" class="methodname">setTimeouts</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.float.php" class="type float">float</a></span> <code class="parameter">$timeout_read</code>
   </span>, <span class="methodparam">
    
    <span class="type"><a href="language.types.float.php" class="type float">float</a></span> <code class="parameter">$timeout_write</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.setwatermark.php" class="methodname">setWatermark</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$events</code>
   </span>, <span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$lowmark</code>
   </span>, <span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$highmark</code>
   </span>): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.sslerror.php" class="methodname">sslError</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="modifier">static</span>
   <span class="methodname"><a href="eventbufferevent.sslfilter.php" class="methodname">sslFilter</a></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="class.eventbase.php" class="type EventBase">EventBase</a></span> <code class="parameter">$base</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="class.eventbufferevent.php" class="type EventBufferEvent">EventBufferEvent</a></span> <code class="parameter">$underlying</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="class.eventsslcontext.php" class="type EventSslContext">EventSslContext</a></span> <code class="parameter">$ctx</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$state</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$options</code>
    <span class="initializer"> = 0</span>
   </span><br>): <span class="type"><a href="class.eventbufferevent.php" class="type EventBufferEvent">EventBufferEvent</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.sslgetcipherinfo.php" class="methodname">sslGetCipherInfo</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.sslgetciphername.php" class="methodname">sslGetCipherName</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.sslgetcipherversion.php" class="methodname">sslGetCipherVersion</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.sslgetprotocol.php" class="methodname">sslGetProtocol</a></span>(): <span class="type"><a href="language.types.string.php" class="type string">string</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.sslrenegotiate.php" class="methodname">sslRenegotiate</a></span>(): <span class="type"><a href="language.types.void.php" class="type void">void</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="modifier">static</span>
   <span class="methodname"><a href="eventbufferevent.sslsocket.php" class="methodname">sslSocket</a></span>(<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="class.eventbase.php" class="type EventBase">EventBase</a></span> <code class="parameter">$base</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.mixed.php" class="type mixed">mixed</a></span> <code class="parameter">$socket</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="class.eventsslcontext.php" class="type EventSslContext">EventSslContext</a></span> <code class="parameter">$ctx</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$state</code>
   </span>,<br>&nbsp;&nbsp;&nbsp;&nbsp;<span class="methodparam">
    
    <span class="type"><a href="language.types.integer.php" class="type int">int</a></span> <code class="parameter">$options</code>
   <span class="initializer"> = ?</span></span><br>): <span class="type"><a href="class.eventbufferevent.php" class="type EventBufferEvent">EventBufferEvent</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.write.php" class="methodname">write</a></span>(<span class="methodparam">
    
    <span class="type"><a href="language.types.string.php" class="type string">string</a></span> <code class="parameter">$data</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>
<div class="methodsynopsis dc-description"><span class="modifier">public</span>
   <span class="methodname"><a href="eventbufferevent.writebuffer.php" class="methodname">writeBuffer</a></span>(<span class="methodparam">
    
    <span class="type"><a href="class.eventbuffer.php" class="type EventBuffer">EventBuffer</a></span> <code class="parameter">$buf</code>
   </span>): <span class="type"><a href="language.types.boolean.php" class="type bool">bool</a></span></div>

   }</div>
   
  </div>
  
  <div class="section" id="eventbufferevent.props">
   <h2 class="title">Свойства</h2>
   <dl>
    
     <dt id="eventbufferevent.props.fd">
      <var class="varname">fd</var>
     </dt>
     <dd>
      <p class="para">
       Числовой файловый дескриптор, который связан с событием буфера.
       Обычно представляет связанный сокет. Дескриптор равен <strong><code><a href="reserved.constants.php#constant.null">null</a></code></strong>, если
       с событием буфера не связан файловый дескриптор (сокет).
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.props.priority">
      <var class="varname">priority</var>
     </dt>
     <dd>
      <p class="para">
       Приоритет событий, через которые реализуют события буфера.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.props.input">
      <var class="varname">input</var>
     </dt>
     <dd>
      <p class="para">
       Нижележащий объект входящего буфера (<span class="classname"><a href="class.eventbuffer.php" class="classname">EventBuffer</a></span>).
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.props.output">
      <var class="varname">output</var>
     </dt>
     <dd>
      <p class="para">
       Нижележащий объект исходящего буфера (<span class="classname"><a href="class.eventbuffer.php" class="classname">EventBuffer</a></span>).
      </p>
     </dd>
    
   </dl>
  </div>
  
  
  <div class="section" id="eventbufferevent.constants">
   <h2 class="title">Предопределённые константы</h2>
   <dl>
    
     <dt id="eventbufferevent.constants.reading">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.reading">EventBufferEvent::READING</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Событие произошло в момент операции чтения из bufferevent. Проверьте
       другие флаги для этого события.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.writing">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.writing">EventBufferEvent::WRITING</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Событие произошло в момент операции записи в bufferevent. Проверьте
       другие флаги для этого события.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.eof">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.eof">EventBufferEvent::EOF</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Получен признак конца файла для буферизированного события.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.error">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.error">EventBufferEvent::ERROR</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Возникла ошибка во время операции с bufferevent. Подробную информацию
       об ошибке получают методом
       <span class="methodname"><a href="eventutil.getlastsocketerrno.php" class="methodname">EventUtil::getLastSocketErrno()</a></span>
       и/или
       <span class="methodname"><a href="eventutil.getlastsocketerror.php" class="methodname">EventUtil::getLastSocketError()</a></span>.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.timeout">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.timeout">EventBufferEvent::TIMEOUT</a></code></strong>
     </dt>
     <dd>
      <p class="para"/>
     </dd>
    
    
     <dt id="eventbufferevent.constants.connected">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.connected">EventBufferEvent::CONNECTED</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Запрошенное соединение с bufferevent установлено.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.opt-close-on-free">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-close-on-free">EventBufferEvent::OPT_CLOSE_ON_FREE</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Закрыть нижележащий транспорт, когда объект буферизированного
       события уничтожен. Закрывается сокет, уничтожается буфер и т. д.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.opt-threadsafe">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-threadsafe">EventBufferEvent::OPT_THREADSAFE</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Автоматически размещать блокировки для bufferevent, чтобы
       безопасно использовать многопоточность.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.opt-defer-callbacks">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-defer-callbacks">EventBufferEvent::OPT_DEFER_CALLBACKS</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       С этим флагом bufferevent откладывает все свои функции обратного вызова.
       Подробнее об отложенных функциях обратного вызова рассказывает страница
       <a href="http://www.wangafu.net/~nickm/libevent-book/Ref6_bufferevent.html#_deferred_callbacks" class="link external">&raquo;&nbsp;Быстрое переносимое неблокирующее сетевое программирование с Libevent и отложенными callback-функциями</a>.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.opt-unlock-callbacks">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.opt-unlock-callbacks">EventBufferEvent::OPT_UNLOCK_CALLBACKS</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       По умолчанию, когда bufferevent настроли как потокобезопасный,
       для буферизированного события сохраняются блокировки при запуске
       любых пользовательских функций обратного вызова.
       Установка этого флага говорит Libevent убирать блокировки при вызове
       этих callback-функций.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.ssl-open">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.ssl-open">EventBufferEvent::SSL_OPEN</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       Подтверждение SSL завершено.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.ssl-connecting">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.ssl-connecting">EventBufferEvent::SSL_CONNECTING</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       В текущий момент SSL участвует в установлении соединения как клиент.
      </p>
     </dd>
    
    
     <dt id="eventbufferevent.constants.ssl-accepting">
      <strong><code><a href="class.eventbufferevent.php#eventbufferevent.constants.ssl-accepting">EventBufferEvent::SSL_ACCEPTING</a></code></strong>
     </dt>
     <dd>
      <p class="para">
       В текущий момент SSL участвует в установлении соединения как сервер.
      </p>
     </dd>
    
   </dl>
  </div>
  
 </div>

 

















































































































































































<h2>Содержание</h2><ul class="chunklist chunklist_reference"><li><a href="eventbufferevent.close.php">EventBufferEvent::close</a> — Закрывает дескриптор файла, связанный с текущим событием буфера</li><li><a href="eventbufferevent.connect.php">EventBufferEvent::connect</a> — Подключает файловый дескриптор события буфера к указанному адресу или сокету UNIX</li><li><a href="eventbufferevent.connecthost.php">EventBufferEvent::connectHost</a> — Соединяется с хостом по имени с необязательным асинхронным разрешением DNS-имени</li><li><a href="eventbufferevent.construct.php">EventBufferEvent::__construct</a> — Создаёт объект EventBufferEvent</li><li><a href="eventbufferevent.createpair.php">EventBufferEvent::createPair</a> — Создаёт два буферных события, которые связаны друг с другом</li><li><a href="eventbufferevent.disable.php">EventBufferEvent::disable</a> — Отключает чтение, запись или и то, и другое в событии буфера</li><li><a href="eventbufferevent.enable.php">EventBufferEvent::enable</a> — Включает чтение, запись или и то, и другое в событии буфера</li><li><a href="eventbufferevent.free.php">EventBufferEvent::free</a> — Освобождает событие буфера</li><li><a href="eventbufferevent.getdnserrorstring.php">EventBufferEvent::getDnsErrorString</a> — Возвращает строку, которая описывает последнюю неудачную попытку поиска DNS-имени</li><li><a href="eventbufferevent.getenabled.php">EventBufferEvent::getEnabled</a> — Возвращает битовую маску событий, которые в данный момент активированы для
   буферного события</li><li><a href="eventbufferevent.getinput.php">EventBufferEvent::getInput</a> — Возвращает базовый входной буфер, связанный с текущим буферным событием</li><li><a href="eventbufferevent.getoutput.php">EventBufferEvent::getOutput</a> — Возвращает базовый выходной буфер, связанный с текущим буферным событием</li><li><a href="eventbufferevent.read.php">EventBufferEvent::read</a> — Читает данные буфера</li><li><a href="eventbufferevent.readbuffer.php">EventBufferEvent::readBuffer</a> — Считывает всё содержимое буфера ввода и помещает его в параметр buf</li><li><a href="eventbufferevent.setcallbacks.php">EventBufferEvent::setCallbacks</a> — Назначает callback-функции для чтения, записи и события при изменении статуса</li><li><a href="eventbufferevent.setpriority.php">EventBufferEvent::setPriority</a> — Присваивает приоритет bufferevent</li><li><a href="eventbufferevent.settimeouts.php">EventBufferEvent::setTimeouts</a> — Устанавливает время ожидания чтения и записи для события буфера</li><li><a href="eventbufferevent.setwatermark.php">EventBufferEvent::setWatermark</a> — Настраивает водяные знаки чтения и (или) записи</li><li><a href="eventbufferevent.sslerror.php">EventBufferEvent::sslError</a> — Возвращает последнюю ошибку OpenSSL, сообщённую буферному событию</li><li><a href="eventbufferevent.sslfilter.php">EventBufferEvent::sslFilter</a> — Создаёт новое событие буфера SSL для отправки своих данных через другое событие буфера</li><li><a href="eventbufferevent.sslgetcipherinfo.php">EventBufferEvent::sslGetCipherInfo</a> — Возвращает текстовое описание шифра</li><li><a href="eventbufferevent.sslgetciphername.php">EventBufferEvent::sslGetCipherName</a> — Возвращает текущее имя шифра соединения SSL</li><li><a href="eventbufferevent.sslgetcipherversion.php">EventBufferEvent::sslGetCipherVersion</a> — Возвращает версию шифра, используемого текущим SSL-соединением</li><li><a href="eventbufferevent.sslgetprotocol.php">EventBufferEvent::sslGetProtocol</a> — Возвращает имя протокола, используемого для текущего соединения SSL</li><li><a href="eventbufferevent.sslrenegotiate.php">EventBufferEvent::sslRenegotiate</a> — Сообщает буферному событию начать пересмотр SSL</li><li><a href="eventbufferevent.sslsocket.php">EventBufferEvent::sslSocket</a> — Создаёт новое буферное событие SSL для отправки своих данных через SSL в сокет</li><li><a href="eventbufferevent.write.php">EventBufferEvent::write</a> — Добавляет данные в буфер вывода буферного события</li><li><a href="eventbufferevent.writebuffer.php">EventBufferEvent::writeBuffer</a> — Добавляет содержимое всего буфера в буфер вывода буферного события</li></ul>
</div>
<?php manual_footer($setup); ?>