首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏小柔博客园

    SurfaceFliger与Vsync信号如何建立链接?

    return BitTube::sendObjects(dataChannel, events, count); } ,MQ::cb_eventReceiver init初始化过程中MQ会监听 BitTube,从而调用到cb_eventReceiver方法 大致流程: 发送消息(REFRESH消息),接着就是图形渲染的过程了。 发送消息代码: int MessageQueue::cb_eventReceiver(int fd, int events, void* data) { MessageQueue* queue = reinterpret_cast<MessageQueue *>(data); return queue->eventReceiver(fd, events); } int MessageQueue ::eventReceiver(int /*fd*/, int /*events*/) { ssize_t n; DisplayEventReceiver::Event buffer[8

    96020编辑于 2022-10-09
  • 来自专栏罗西的思考

    [源码解析] 并行分布式任务队列 Celery 之 EventDispatcher & Event 组件

    EventReceiver 就是用来接收Event,并且处理的。 而且需要留意,EventReceiver 是继承 ConsumerMixin。 class EventReceiver(ConsumerMixin): """Capture events. object at 0x000001CA8C22AB08>> self = {EventReceiver} <celery.events.receiver.EventReceiver object _receive = {method} <bound method EventReceiver.

    1.1K10发布于 2021-05-13
  • 来自专栏给永远比拿愉快

    C#中事件(event)

    /// class EventReceiver { //(3)编写事件处理程序 private void OnkeyDown(Object } //(4)利用编写的事件处理程序生成一个委托实例 //(5)把这个委托实例添加到产生事件对象的事件列表中去 public EventReceiver static void Main() { KeyInputMonitor monitor = new KeyInputMonitor(); EventReceiver receiver = new EventReceiver(monitor); monitor.Run(); } } } 运行结果: ?

    2.4K30发布于 2019-01-25
  • 来自专栏小柔博客园

    SurfaceFlinger浅析之初始化流程(下)

    建立连接,在通过createEventConnection的返回值获取BitTube对象,获取BitTube的fd利用Looper的addFd来监听数据,一旦数据到来则调用MedssageQuene的cb_eventReceiver createEventConnection(); //获取BitTube对象 mEventTube = mEvents->getDataChannel(); //监听BitTube,一旦有数据到来则调用MQ的 cb_eventReceiver () mLooper->addFd(mEventTube->getFd(), 0, Looper::EVENT_INPUT, MessageQueue::cb_eventReceiver

    56310编辑于 2022-10-09
  • 来自专栏林冠宏的技术文章

    关于Android中为什么主线程不会因为Looper.loop()里的死循环卡死?引发的思考,事实可能不是一个 epoll 那么 简单。

    会调用 MessageQueue 内部的函数 eventReceiver(...) 。    eventReceiver 内部将会对进程中的消息获取,如果有收到其它进程传过来的对应的VSync 消息,那么将会对其进行下一步的分发,就是 dispatchInvalidate(...)

    1.9K50发布于 2018-01-03
  • 来自专栏小柔博客园

    SurfaceFlinger浅析之初始化流程(上)

    createEventConnection),接着SF会创建Connection对象,再通过Connection对象获取BitTube对象(本质是Socket),Looper监听BitTube的fd,接受到事件后回调MQ的eventReceiver

    86830编辑于 2022-10-09
领券