Varia's website
https://varia.zone
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
20 lines
417 B
20 lines
417 B
1 week ago
|
"""
|
||
|
Timer context manager, only used in debug.
|
||
|
|
||
|
"""
|
||
|
|
||
|
from time import time
|
||
|
|
||
|
import contextlib
|
||
|
from typing import Generator
|
||
|
|
||
|
|
||
|
@contextlib.contextmanager
|
||
|
def timer(subject: str = "time") -> Generator[None, None, None]:
|
||
|
"""print the elapsed time. (only used in debugging)"""
|
||
|
start = time()
|
||
|
yield
|
||
|
elapsed = time() - start
|
||
|
elapsed_ms = elapsed * 1000
|
||
|
print(f"{subject} elapsed {elapsed_ms:.1f}ms")
|