zoukankan      html  css  js  c++  java
  • yield学习笔记

    参考:http://www.dabeaz.com/finalgenerator/

    from concurrent.futures import ThreadPoolExecutor
    import time
    pool = ThreadPoolExecutor(max_workers=8)
    
    def func(x, y):
        time.sleep(5)
        return x, y
    
    def do_func(x, y):
        result = yield pool.submit(func, x, y)
        print('Got: ', result)
     
    def after(delay, gen):
        yield pool.submit(time.sleep, delay)
        result = None
        try:
            while True:
                f = gen.send(result)
                result = yield f
        except StopIteration:
            print('after ecoutnered StopIteration.')
     
    class Task:
        def __init__(self, gen):
            self._gen = gen
        def step(self, value=None):
            # Run to the next yield
            try:
                fut = self._gen.send(value)
                # Future returned
                fut.add_done_callback(self._wakeup)
            except StopIteration as exc:
                print('Task encountered StopIteration.')
        def _wakeup(self, fut):
            # handler for results
            result = fut.result()
            self.step(result)  # Feedback loop (run to next yield)

    为查看完整图片,可右键单击图片选择在新页面中查看。

  • 相关阅读:
    特征可视化技术(CAM)
    特征可视化技术(CAM)
    attention
    attention
    Aggregated Residual Transformations for Deep Neural Networks(ResNeXt)
    attention
    attention
    位姿估计
    attention
    通过几个例子看下seajs模块标识符(有图有真相)
  • 原文地址:https://www.cnblogs.com/yifeixu/p/8734899.html
Copyright © 2011-2022 走看看