2016-05-24 7 views
8

PyPyはaioとPython 3.5をサポートしていますか?PyPyはasyncioで動作しますか?

PyPyのパフォーマンスと、非同期コードasyncioが必要です。また、コード内にasync/awaitを使用する必要があります。それは可能ですか?

もしそうなら、ニュアンスは何ですか?

答えて

12

現在、PyPyはPython 3.5をサポートしています。 PyPyのPython 3のサポートは、現時点ではベータ版のみであることに注意してください。私たちは継続的に改善に取り組んでいます。しかし、まだ生産準備はできていません。 asyncioを含むほとんどのコードはうまくいくはずです。そうでない場合は、check the open bug reportsまたはcreate a new oneを入力するか、コメントにここでお知らせください。


(2017年8月18日現在)今時代遅れの古いが、ノート:

現在PyPyはPythonの3.3をサポートしています。つまり、PyPy3.3でinstall asyncioを実行できます。 PyPyの3.3サポートは現時点ではアルファ/ベータの品質しかないことに注意してください。しかし、私たちはCPythonとのパフォーマンス向上と互換性向上に積極的に取り組んでいます。

async/await機能がPython 3.5で追加されました。私たちはPython 3.5のサポートで非常に実験的なブランチを始めましたが、まだまだ道のりはまだまだあります。幸いなことに、現在GSoCの学生がそれに取り組んでいますが、それでも数日間かかることがあります(寄付やボランティア活動の度合いによって異なります)。

EDIT 1:以前はasyncioを実行する機能がありませんでした。この編集の直前に実装されました。それに応じて答えが編集されました。

編集2:PyPy3.3のアルファ版をリリースしました。 Python 3.2のみをサポートするPyPy3の古いリリースを試してみることはお勧めしません。これが私が答えのほとんどを書き直した理由です。


(2016年5月30日現在)現在は廃止古いは、ノート:

ウェブサイトからPyPy3のバージョンが非常に古いであり、唯一のPython 3.2が実装する - 私たちは、以上のリリースを行っていません1年半です。 Python 3.2にはyield from機能がないため、asyncioはこのバージョンでは動作しません。

+0

今やPyPy3.5があるようですね。 –

+0

まあ、PyPy3.5はまだ完成していないか、生産準備ができていません。しかし、昨年は主にPyPy3.5に焦点が当てられていたので、私は自分の答えを更新すべきです。 –

1

No.によると、asyncioはPython 3.4が必要ですが、PyPy websiteに従っています(実際にはpipで3.3をインストールすることができます、感謝@dirn)。またAsyncio Wikiに、AsyncioはまだPyPyでは動作しないと言われています(Wikiは2015年8月に最後に更新されましたが)。

+0

3.4のstdlibにasyncioが追加され、3.3のpipを使用してインストールできます。しかし、それはPyPyに関する答えには影響しません。 – dirn

+0

ありがとう、私は答えを –

+1

更新この男は、そうでなければ言うhttp://stackoverflow.com/questions/8960747/stackless-in-pypy-and-pypy-greenlet-differences – Ale

関連する問題