İçeriğe geç

Serbest bırakılmayan kaynak (ARCH2080)

Anahtar python.performance.disposable-not-disposed · Önem error · Kategori performance

Kaynak sahibi bir nesne oluşturulup with bloğu olmadan kullanıldığında, bir hata oluşursa serbest bırakılmaz ve sızıntıya yol açar. Bağlam yöneticisi kullanın.

def write_report(path, data):
lock = acquire_lock("report")
f = open(path, "w")
f.write(data)
f.close()
lock.release()
def write_report(path, data):
with acquire_lock("report"), open(path, "w") as f:
f.write(data)

Kaynak sahibi nesneleri with bağlam yöneticisiyle sarın; çıkışta otomatik serbest bırakılsın.