21

そうではないと確信していましたが、インターウェブで明確な答えを探すと、疑問が残りました。たとえば、2008 年の投稿は、一見冗談のように見えましたが、よく見ると真面目に見えました。

編集: ... さらによく 見ると、冗談であることが判明しました。混乱させて申し訳ありません。Nikhilが正しく指摘したように、実際にはその投稿へのコメントが私の質問に答えています.

この分野では CPython がはるかに先を行っており、互換性が不足していることに気付きました。真剣にブレインストーミングを行った後 (そして数杯のワインを飲みながら)、Jython にグローバル インタープリター ロックを導入することで問題全体が解決すると判断しました。

さて、ここの状態は?sourceforgeの「相違点」ページでは、GIL についてはまったく言及されていません。私が見落としている公式の情報源はありますか?

また、GIL がまったく重要であるかどうかについて進行中の議論を認識していることにも注意してください。ただし、現時点では気にしません。

4

4 に答える 4

26

あなたが見つけた引用は確かに冗談でした.JythonのGILの実装のデモは次のとおりです。

Jython 2.5.0 (trunk:6550M, Jul 20 2009, 08:40:15) 
[Java HotSpot(TM) Client VM (Apple Inc.)] on java1.5.0_19
Type "help", "copyright", "credits" or "license" for more information.
>>> from __future__ import GIL
  File "<stdin>", line 1
SyntaxError: Never going to happen!
>>> 
于 2009-07-18T13:35:07.457 に答える
23

いいえ、違います。これは、言語ではなく、VM 実装の一部です。

以下も参照してください。

from __future__ import braces
于 2009-07-13T16:00:43.283 に答える
5

これは、基盤Jythonとなる VM の実装の詳細であるためですIronPythonGILだいぶ前に見つけた情報が多かったのですが、今思いつくのはこれだけでした。

GILはマルチプロセッサ環境のみの問題であり、予見可能な将来に からなくなる可能性は低いことに注意してくださいCPython

于 2009-07-13T18:53:30.453 に答える
-1

Google は、cpython を修正した Python の実装を作成しており、パフォーマンスが改善された unladen swallow と呼ばれています。これにより、GIL が削除されます。参照:空荷ツバメ

于 2009-07-16T10:40:32.883 に答える