1234567891011121314151617181920 |
- from functools import wraps
- import time
- from typing import Callable, Any
- def async_timed():
- def wrapper(func: Callable) -> Callable:
- @wraps(func)
- async def wrapped(*args, **kwargs) -> Any:
- # print(f'выполняется {func} с аргументами {args} {kwargs}')
- start = time.time()
- try:
- return await func(*args, **kwargs)
- finally:
- end = time.time()
- total = end - start
- print(f'{func} завершилась за {total:.4f} с')
- return wrapped
- return wrapper
|