我已經在python中實現了Google Cloud Messaging服務器,並且我希望該方法是異步的。我不希望任何來自該方法的返回值。有沒有簡單的方法來做到這一點? 我一直在使用async
從asyncio
包的嘗試:如何調用一個方法,並使其在Python 3.4中的後臺運行?
...
loop = asyncio.get_event_loop()
if(module_status=="Fail"):
loop.run_until_complete(sendNotification(module_name, module_status))
...
,這裏是我的方法sendNotification()
:
async def sendNotification(module_name, module_status):
gcm = GCM("API_Key")
data ={"message":module_status, "moduleName":module_name}
reg_ids = ["device_tokens"]
response = gcm.json_request(registration_ids=reg_ids, data=data)
print("GCM notification sent!")
如果'gcm.json_request'方法沒有使用'asyncio'定義,那麼沒有簡單的方法來做到這一點。 –
@NateMara我正在使用python-gcm librabry [link](https://github.com/geeknam/python-gcm/blob/master/gcm/gcm.py)。我看到它的代碼,它不是異步的。你能提出一個解決方案,讓我的方法在後臺運行嗎? – Arjun
你可以使用'multiprocessing'或者使用'aiohttp'自己進行HTTP調用 –