2012-11-08 51 views
9

Trong tài liệu của module threading nó nóiSử dụng threading.Lock như quản lý bối cảnh

Tất cả các đối tượng được cung cấp bởi module này có được() và phát hành() phương pháp có thể được sử dụng như các nhà quản lý bối cảnh cho một tuyên bố với số . Phương thức get() sẽ được gọi khi khối là được nhập vào, và release() sẽ được gọi khi khối đó được thoát ra.

Tôi đã tự hỏi nếu nó được gọi trong chế độ chặn hoặc không chặn?

Trả lời

8

Từ khi nhìn vào CPython source, có vẻ như nó được gọi với đối số mặc định, có nghĩa là ở chế độ chặn.

Các phương pháp bạn muốn xem cụ thể là __enter__(), được gọi ở đầu khối with__exit__(), được gọi ở cuối.

Các vấn đề liên quan