batch_iterator.py 文件源码

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

项目:dl-papers 作者: 4Catalyzer 项目源码 文件源码
def __init__(self, source, buffer_size=2):
        assert buffer_size >= 2, "minimum buffer size is 2"

        # The effective buffer size is one larger, because the generation
        # process will generate one extra element and block until there is room
        # in the buffer.
        self.buffer = Queue(maxsize=buffer_size - 1)

        def populate_buffer():
            try:
                for item in source:
                    self.buffer.put((None, item))
            except:
                self.buffer.put((sys.exc_info(), None))
            else:
                self.buffer.put(DONE)

        thread = threading.Thread(target=populate_buffer)
        thread.daemon = True
        thread.start()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号