asyncio future
asyncio future
1. Future Object
class asyncio.Future(*, loop=None)
Future代表一段异步操作的最终结果。非线程安全。
它是awaitable对象。
1.1. 常用方法
- 
result() 返回结果 
 正常返回结果有两个条件,done/有一个结果(使用set_result()设定)。
 如果done但是有异常(set_exception()设定),raises the exception.
 如果对象被取消raises a CancelledError exception.
 如果没完成,raises a InvalidStateError exception.
- 
set_result(result):标定对象为done并设置结果。 
 如果已经done,Raises a InvalidStateError。
- 
set_exception(exception):标定对象为done并设置异常 
 如果已经done,Raises a InvalidStateError。
- 
done():是否done。意为它经过以下之一方法处理,cancelled/set_result()/set_exception() 
- 
cancelled():是否已取消。通常在设置结果或异常前检查。 
- 
add_done_callback(callback, *, context=None):添加回调 
 回调函数的唯一参数是Future本身。
 回调由loop.call_soon()调用。
 如果想用更多参数,unctools.partial()。
- 
remove_done_callback(callback) 
 Remove callback from the callbacks list.
 Returns the number of callbacks removed, which is typically 1, unless a callback was added more than once.
- 
cancel():取消future和回调。 
 如果它已经done或取消,返回False。否则,执行操作并返回True。
- 
exception():返回异常。 
 只能在done状态下返回。
 已取消raises a CancelledError exception.
 未doneraises an InvalidStateError exception.
- 
get_loop():返回loop 
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号