在Python中,可以使用asyncio
庫來實現異步回調。下面是一個簡單的示例,演示如何使用異步回調:
import asyncio
# 定義一個異步函數,模擬耗時的操作
async def long_running_operation(callback):
await asyncio.sleep(2) # 模擬2秒的耗時操作
result = "操作完成"
callback(result) # 調用回調函數,并傳遞結果
# 定義一個回調函數,用于處理異步操作的結果
def handle_result(result):
print("異步操作的結果:", result)
# 創建一個事件循環
loop = asyncio.get_event_loop()
# 調用異步函數,并傳遞回調函數
loop.create_task(long_running_operation(handle_result))
# 運行事件循環
loop.run_forever()
在上面的示例中,定義了一個名為long_running_operation
的異步函數,模擬了一個耗時的操作,并在操作完成后調用回調函數來處理結果。
使用asyncio.get_event_loop()
函數來獲取一個事件循環對象,并使用loop.create_task()
方法創建一個任務,將異步函數和回調函數作為參數傳遞。
最后,使用loop.run_forever()
運行事件循環,使異步操作能夠執行,并在操作完成后調用回調函數處理結果。
這只是一個簡單的示例,實際使用中可能會根據具體需求進行更復雜的異步操作和回調處理。