Đi đến nội dung
Ngoại lệ PythonThông tin
GeneratorExit

GeneratorExit

Được raise khi phương thức close() của generator được gọi, cho phép dọn dẹp tài nguyên.

python

Nguyên nhân gây ra lỗi này

Phương thức close() của generator hoặc coroutine được gọi, hoặc generator bị garbage collected. Điều này cho generator cơ hội chạy các khối finally và giải phóng tài nguyên.

Cách sửa

Dùng try-finally trong generator để dọn dẹp. Không yield giá trị mới trong trình xử lý GeneratorExit. Nếu cần logic dọn dẹp, đặt nó trong khối finally bên trong hàm generator.

Tài liệu chính thức

Mã lỗi liên quan