変数のメモリ管理-python Pythonの基礎

ストレージ関連の変数

変数は、間のメモリに格納され
た定義、実行時のメモリ空間でのコンピュータのメモリ内の独立変数に対して適用されます

小さな整数プール

図1は、対話モードで
小さなPython実装INT整数プールがある場合。同じ値がメモリ空間に起因するアプリケーションの効率、出発プール小さな整数の範囲作成Pythonインタプリタ[-5256]繰り返される作成を避けるために、オブジェクトの範囲内の小さな整数グローバルインタプリタであります範囲が再利用され、GCが回収されることはない
-5と256の間の整数を作成した後、値は、例えば、直接、直接離れてプールから取られ
>>> = Y. 4
>>> ID(Y )
4297641184
>>>
>>> X = 3
>>> = X +。1つの
>>> ID(X)
4297641184
PyCharmで
はなく、パフォーマンスの考慮にPyCharm、PyCharmを実行するPythonプログラムは、小さな整数のプールを拡大します範囲は、他の不変の種類の文字列なども取引が同じようになります含まれている、私たちは、最終的にはどのくらいの範囲について、これは最適化のメカニズムであることを覚えているために何も慎重に検討を必要としません


ガーベジコレクション

1.参照カウント:彼らは結合関係を持っていると何の変数名が存在しない場合は、メモリ内のデータは、それが自動的に回復されます
。2.マーク・クリアを:メモリがアプリケーションに充填されようとしているとき、それは自動的にトリガされます
3ポイント生成リサイクル:生存時間価値応じて、異なるレベル、周波数走査の下ガベージコレクション機構より高いレベルに分類
パーソナル理解:
  などのJava、C#のような現在の高水準言語、ガベージコレクション機構を採用しているのではなく、これは、ユーザー自身のやり方では、C、C ++のメモリ管理とメンテナンスです。独自のメモリ管理は非常に自由である、あなたは、任意のメモリに適用することができますが、両刃の剣のように、メモリリーク、ダングリングポインタなどの多数のバグが隠され横たわっていました。
  囲碁の言語を見て、最後の2日間と同様に、それは、ガベージコレクションは、高レベルのプログラミング言語の面で重いワークロードのとある程度軽減されるように、直接、文句を言うと、プレゼンテーションの場になる変数ゴミの有無に代わりにガベージコレクションメカニズムです。開発効率と生産性を向上させる仕組みで
  、最初のバインド変数の関係は自然にリサイクルされますではありません1
  2つの変数は、ほとんどフルタイムをマークされ、Pythonの基礎となる操作は迷惑マルチマーカー削除させていただきます
  年、若者を代表して3より自動的にスキャンされていない長いスキャン時間の短いから、小から大に古いのサイズは、次世代のごみを渡す。
男はクールは理解している:鶏肉を逆転さ
  だけでなく、撮影した、より安全なの前で状態のように古い殺す
  後半に小さな円、円の毒は非常に危険なことができ、死亡率の高い若者世代は
  半ば妥協2つの前に
  逆の状況は、世代のリカバリに対応します

おすすめ

転載: www.cnblogs.com/suren-apan/p/11374620.html