您好,登錄后才能下訂單哦!
本文小編為大家詳細(xì)介紹“Python同步方法怎么變?yōu)楫惒椒椒ā?,?nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Python同步方法怎么變?yōu)楫惒椒椒ā蔽恼履軒椭蠹医鉀Q疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。
在我們平時的FastApi工作中,經(jīng)常會用到一些異步的操作,為了保持一致,我們一般會編寫配套的異步代碼。
但如果我們提供了類似jmeter BeanShell的可執(zhí)行代碼的功能給用戶,那用戶還能給你編寫異步代碼嗎?那顯然是不可能的事情。
還有一種情況,當(dāng)我們引入第三方包,比如一些oss的庫,里面天然是同步方法,有內(nèi)置的requests請求,你想不阻塞整個fastapi服務(wù),也是需要將他們異步化的。
這塊先給我點(diǎn)時間去調(diào)研,我暫時還沒有完全玩明白里面的內(nèi)容。初步的設(shè)想是通過loop.run_in_executor執(zhí)行同步代碼,讓他超乎三界之外,不讓其阻塞事件循環(huán)。
由于還不是很確定,所以會在后面理解清楚了補(bǔ)充進(jìn)來。那就沒有現(xiàn)成的方案嗎?答案是有的,想做這件事情的,不只是我哦!
為此我調(diào)研了幾個庫,它們都能很好地解決這個問題。下面我們來一一介紹。
這是大名鼎鼎的FastApi的作者,休閑娛樂的時候?qū)懙囊豢罟ぞ?,它不僅可以把同步代碼異步化,還可以把異步代碼同步化,我們來看看介紹。
pip install asyncer
這個庫挺不錯的,是一個烏拉老哥寫的。里面充斥著我看不懂的俄語注釋,但我試過功能比較完善,也很容易上手,不信咱們看看:
安裝
pip install awaits
使用
pip install aioify
讀到這里,這篇“Python同步方法怎么變?yōu)楫惒椒椒ā蔽恼乱呀?jīng)介紹完畢,想要掌握這篇文章的知識點(diǎn)還需要大家自己動手實(shí)踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。