Tôi đang đọc cuốn sách Java Concurrency in Practice. Trong một phần về java.util.concurrent.Semaphore
, các dòng dưới đây có trong sách. Đó là một nhận xét về việc thực hiện các "giấy phép ảo" đối tượngLàm thế nào và tại sao một Semaphore có thể đưa ra nhiều giấy phép hơn so với khi nó được khởi tạo?
Việc thực hiện không có đối tượng giấy phép thực tế, và
Semaphore
không không Associate giấy phép phân phối với chủ đề, do đó, một giấy phép mua lại vào một thread có thể được phát hành từ một chủ đề khác. Bạn có thể nghĩ đến sốacquire
khi sử dụng giấy phép vàrelease
khi tạo một giấy phép; aSemaphore
không giới hạn số giấy phép được tạo.
Ai đó có thể giải thích điều này? Tôi gặp khó khăn khi hiểu điều này. Nếu chúng tôi tạo một nhóm có kích thước cố định, chúng tôi sẽ tạo một số "giấy phép" cố định. Từ tuyên bố trên, có vẻ như "giấy phép" có thể tiếp tục phát triển. Tại sao nó được thiết kế theo cách này?
trông giống cụm từ trang trí công phu – gstackoverflow