<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ev\_base是基于libevent封裝了一層C++類接口,源碼文件兩個:ev\_base.h和ev\_base.cpp;接口定義如下: ![](https://img.kancloud.cn/f7/a7/f7a7ce1ae5af32f6f74fdf218f129136_798x868.png =600x) ### 源碼其實非常的簡單,就是基于libevent實現了定時器和loop,以及接口對資源的管理(內存申請回收等): ### ``` 1.ev_base::ev_base()?? 2.{?? 3.????::signal(SIGPIPE,?SIG_IGN);?? 4.?? 5.????this->base_?=?event_base_new();?? 6.?? 7.????this->tv_.tv_sec?=?0;?? 8.????this->tv_.tv_usec?=?1000?*?100;?? 9.?? 10.????evtimer_set(&this->evtimer_,?ev_base::on_timer,?this);?? 11.????event_base_set(this->base_,?&this->evtimer_);?? 12.????evtimer_add(&this->evtimer_,?&this->tv_);?? 13.}?? 14.?? 15.ev_base::~ev_base()?? 16.{?? 17.????evtimer_del(&this->evtimer_);?? 18.?? 19.????event_base_free(this->base_);?? 20.}?? 21.?? 22.void?ev_base::loop()?? 23.{?? 24.????event_base_dispatch(this->base_);?? 25.}?? 26.?? 27.void?ev_base::on_timer(int?fd,?short?event,?void?*arg)?? 28.{?? 29.????ev_base?*self?=?reinterpret_cast<ev_base?*>(arg);?? 30.?? 31.????self->on_ticks();?? 32.?? 33.????evtimer_add(&self->evtimer_,?&self->tv_);?? 34.} ``` ### * event\_base\_new : 實例化一個base。 * event\_base\_free : 釋放實例對象。 * event\_base\_dispatch :分發,進入無限循環,和先前章節中link\_loop\_forever一致。 * evtimer\_set : 設置定時器。 * event\_base\_set : 設置實例。 * evtimer\_add :添加定時器。 * evtimer\_del :刪除定時器。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看