From 5d7f40a890a1a1dd6dc7dc2982308932ba86cc42 Mon Sep 17 00:00:00 2001 From: bd Date: Mon, 9 Jun 2025 19:16:37 -0400 Subject: Add naive async profiling functionality and proof of concept program --- tests/simult-busy.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 tests/simult-busy.py (limited to 'tests/simult-busy.py') diff --git a/tests/simult-busy.py b/tests/simult-busy.py new file mode 100644 index 0000000..4cc4b2a --- /dev/null +++ b/tests/simult-busy.py @@ -0,0 +1,25 @@ +import asyncio +import time + +async def busy_task(): + await asyncio.sleep(3.0) + return 1 + +async def main(): + tasks = [asyncio.create_task(busy_task()) for i in range(5)] + + start_time = time.time() + try: + # this is to prevent waiting in 'select' all day, + # which makes the python intepreter not respond to + # mini-scalene / SCALENE + while True: + if time.time() - start_time > 3.5: + break + await asyncio.sleep(0) # yield + except KeyboardInterrupt: + pass + finally: + print("Done.") + +asyncio.run(main()) -- cgit v1.2.3