2016-10-17 6 views
-7

このページの例: https://wiki.python.org/moin/CrashingPython#Exhausting_Resources なぜ私のpython 2.7で再現できないのですか なぜpythonがクラッシュするのですか?この場合、pythonがクラッシュしないのはなぜですか?

$ python 
Python 2.4.2 (#2, Sep 30 2005, 21:19:01) 
[GCC 4.0.2 20050808 (prerelease) (Ubuntu 4.0.1-4ubuntu8)] on linux2 
Type "help", "copyright", "credits" or "license" for more information. 
>>> f = lambda: None 
>>> for i in xrange(1000000): 
...  f = f.__call__ 
... 
>>> del f 
Segmentation fault 
+3

この問題を含め、常にバグが修正されています。これがなぜPython 2.7で再現できないのかについて具体的な説明があるのはなぜですか? –

+0

私はこれをPython 2.4.6で再現することさえできません。そのため、[変更履歴](https://hg.python.org/cpython/file/2.4/Misc/NEWS)を検索するための狭い範囲が得られます。 )。 –

+2

そこには:http://bugs.python.org/issue532646、Python 2.4.4で修正されています。 –

答えて

0

これは単なるバグだったので、issue #532646を参照してください。

すべてのソフトウェアにバグがあり、Pythonプロジェクトも例外ではありません。バグが見つかって修正されたため、2.7で再現することはできません。

具体的には、ページでは、ドキュメントの様々な、そのようなクラッシュバグを発見し、それがトップでそうを述べている:多くの労力がPythonインタプリタをクラッシュさせることが困難または不可能に入ったが

通常の使用法では、通訳者をクラッシュさせる方法はかなり簡単です。 BDFLは最近python-devメーリングリストで発音しました:

私はそれがuncrashableだと言っているわけではありません。私はあなたがそれをクラッシュさせるならば、証明されていない限り、それはバグだと言っています。

は任意の既知の、まだ未解決のバグがcrashers test suiteに追加されます。これらのテストの履歴に従うと、より多くのクラッシャーとそれが適用されるPythonのバージョンを見つけることができます。ほとんどの場合、あなたの質問のようなあいまいな設定が必要です。

関連する問題