🖥

#python #初心者 #gc #ガベージコレクション #勉強 したい #rubyist @yumainaura

2023/08/26に公開

Pythonのgcモジュールでガベージコレクションを行う方法 | TechAcademyマガジン

疑問、pythonでgcとか必要なの?そんな低レイヤーの処理

プログラマーはメモリの解放を明示的にコーディングしなければなりません。コーディングを忘れたり間違えたりすると、メモリリーク(漏れ)の原因になります。

やはり相当低レイヤー向けの処理らしい

Pythonは必要に応じて自動的にガベージコレクションを行います。
通常の用途では明示的にガベージコレクションを行う必要はありません。

gc用のモジュールがあるらしい

1行目でgcモジュールをインポートしています。

import gc

シンプルイズベスト

コールバック

本体処理ではないが、処理をフックできるらしい。

3行目で関数を定義し、コールバックに登録しました。
ガベージコレクション実行のたびに、このコールバック関数が呼び出されます。

# コールバック関数を定義する
def callback(phase, info):
    print(phase, info)
gc.callbacks.append(callback)

無効化、停止処理も書けるらしい

8行目で自動ガベージコレクションを停止しました。

gc.disable()

シンプルイズベスト

どゆこと?

停止した後に collect処理がある?

gc.collect()

勉強ここまで

以上、初心者がつまづきやすそうな1ユーザーの痕跡。

チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

https://line.me/ti/g2/eEPltQ6Tzh3pYAZV8JXKZqc7PJ6L0rpm573dcQ

Twitter

https://twitter.com/YumaInaura

公開日時

2018-12-26

Discussion