美文网首页浅析muduo网络库
浅析muduo网络库之updateChannel——谁在调用

浅析muduo网络库之updateChannel——谁在调用

作者: 谢昆明 | 来源:发表于2018-01-09 21:05 被阅读27次

看代码


void Channel::update()
{
  addedToLoop_ = true;
  loop_->updateChannel(this);
}

void EventLoop::updateChannel(Channel* channel)
{
  assert(channel->ownerLoop() == this);
  assertInLoopThread();
  poller_->updateChannel(channel);
}

谁在调用channel::update()

class Channel {
  void enableReading() { events_ |= kReadEvent; update(); }
  void disableReading() { events_ &= ~kReadEvent; update(); }
  void enableWriting() { events_ |= kWriteEvent; update(); }
  void disableWriting() { events_ &= ~kWriteEvent; update(); }
  void disableAll() { events_ = kNoneEvent; update(); }
};

原来更新了监听事件,就会调用update()

打赏

如果这篇文章解决了您的问题,让我买根烟抽抽。

支付宝.jpg 微信.jpg

相关文章

网友评论

    本文标题:浅析muduo网络库之updateChannel——谁在调用

    本文链接:https://www.haomeiwen.com/subject/qzwgnxtx.html