Use uvloop in linux

This commit is contained in:
2024-02-11 12:44:28 +03:00
parent 883479b0d8
commit 981101d228
2 changed files with 6 additions and 1 deletions

View File

@@ -57,9 +57,13 @@ if __name__ == '__main__':
finally: finally:
loop.close() loop.close()
else: else:
import uvloop
for signame in ('SIGINT', 'SIGTERM'): for signame in ('SIGINT', 'SIGTERM'):
loop.add_signal_handler(getattr(signal, signame), loop.stop) loop.add_signal_handler(getattr(signal, signame), loop.stop)
try: try:
asyncio.set_event_loop_policy(uvloop.EventLoopPolicy())
loop = uvloop.new_event_loop()
asyncio.set_event_loop(loop)
asyncio.run(main()) asyncio.run(main())
except KeyboardInterrupt: except KeyboardInterrupt:
pass pass

View File

@@ -4,4 +4,5 @@ requests==2.31.0
python-dateutil==2.8.2 python-dateutil==2.8.2
aiohttp==3.8.6 aiohttp==3.8.6
pydantic==2.3.0 pydantic==2.3.0
pydantic-settings==2.1.0 pydantic-settings==2.1.0
uvloop==0.19.0; sys.platform == 'linux'