asyncio の長所と短所

php中世界最好的语言
php中世界最好的语言オリジナル
2017-11-27 15:05:493597ブラウズ

今日は、asyncio の長所と短所について説明します。非同期 IO を学ぶには、コルーチンと asynico について知る必要があります。アシンシオの使い方は?以下に 1 つずつ答えてみましょう

利点

非同期 IO タスクに非常に使いやすい

プログラミングモデルがより簡単で、負担が比較的小さいです:

asyncio を使用してイベント ループを取得します

そしてこれに進みます 物(コルーチン)がループに詰め込まれています

オペレーティングシステムは依然として単一のスレッドを認識しますが、マクロの観点からは「複数の同時実行性」を認識します(すべての言語はほぼ次のようなものです。ユーザーモードモデルでマルチスレッド)

欠点

エコロジーが未熟(aio-libsはあるが)、リクエストのようなライブラリにも対応する実装があると素晴らしい(人気が高いはず)

前提: アプリは前から後ろまで構築する必要があります それらはすべて非同期であり、多くのレガシー プロジェクトにとって負担になります

gevent + Python 2 との比較

多くのプロジェクトは Python 2 に基づいており、gevent を使用する効果は次のとおりです。当たり前です

唯一の心配は、gevent のウィルです。パッチ (ハック標準ライブラリ) がたくさんあり、目に見えるものはブラックボックスなので、gevent の効率が必ずしも asyncio よりも低いわけではありません。 + async def. 私たちとして asyncio を使用するにはどうすればよいですか?

フレームワーク

(私は標準ライブラリのものを好みます)、基本的な設計方法として async def/await を使用します

aio-libs のさまざまなライブラリを使用します (最初から非同期である必要があります) )

信じられないかもしれませんが、これらの事例を読んだ後は、その方法を習得したことになります。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

関連書籍:

CSS Web ページの位置ずれに対処する方法

CSS3 を使用してアイコン効果を作成する方法

Canvas を使用してボールとマウスの相互作用を実現する方法

以上がasyncio の長所と短所の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。