第一种:asyncio
import asyncio
async def run1():
print('a')
await asyncio.sleep(2)
print('b')
async def run2():
print('c')
await asyncio.sleep(1)
print('d')
if __name__ == '__main__':
loop = asyncio.get_event_loop()
tasks = [run2(), run1()]
loop.run_until_complete(asyncio.wait(tasks))
loop.close()
第二种: gevent
import gevent
from gevent import monkey
monkey.patch_all()
def run1():
print('a')
gevent.sleep(1.5)
print('b')
def run2():
print('c')
gevent.sleep(1)
print('d')
if __name__ == '__main__':
gevent.joinall([
gevent.spawn(run1),
gevent.spawn(run2)
])