anim.py 文件源码

python
阅读 37 收藏 0 点赞 0 评论 0

项目:uchroma 作者: cyanogen 项目源码 文件源码
def _get_layers(self):
        """
        Wait for renderers to produce new layers, yields until at least one
        layer is active.
        """
        # schedule tasks to wait on each renderer queue
        for r_idx in range(0, len(self.layers)):
            layer = self.layers[r_idx]

            if layer.waiter is None or layer.waiter.done():
                layer.waiter = ensure_future(self._dequeue(r_idx))

        # async wait for at least one completion
        waiters = [layer.waiter for layer in self.layers]
        if len(waiters) == 0:
            return

        await asyncio.wait(waiters, return_when=futures.FIRST_COMPLETED)

        # check the rest without waiting
        for r_idx in range(0, len(self.layers)):
            layer = self.layers[r_idx]

            if layer.waiter is not None and not layer.waiter.done():
                self._dequeue_nowait(r_idx)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号