Tôi bối rối với mô tả thread_localtrong C ++ 11. Hiểu biết của tôi là, mỗi luồng có bản sao duy nhất của các biến cục bộ trong một hàm. Các biến toàn cục / tĩnh có thể được truy cập bởi tất cả các luồng (có thể truy cập …
Cụ thể trong Python, làm cách nào để các biến được chia sẻ giữa các luồng? Mặc dù tôi đã sử dụng threading.Threadtrước đây nhưng tôi chưa bao giờ thực sự hiểu hoặc xem các ví dụ về cách các biến được chia sẻ. Chúng được chia sẻ giữa chủ …
[ThreadStatic]được xác định bằng cách sử dụng thuộc tính trong khi ThreadLocal<T>sử dụng chung. Tại sao các giải pháp thiết kế khác nhau được chọn? Ưu điểm và nhược điểm của việc sử dụng thuộc tính chung trong trường hợp này là gì?
Đọc từ ThreadLocalbiến chậm hơn bao nhiêu so với từ trường thông thường? Cụ thể hơn là việc tạo đối tượng đơn giản nhanh hơn hay chậm hơn việc truy cập vào ThreadLocalbiến? Tôi giả sử rằng nó đủ nhanh để ThreadLocal<MessageDigest>việc tạo phiên bản nhanh hơn nhiều sau đó …
ThreadLocal được triển khai như thế nào? Nó được triển khai bằng Java (sử dụng một số bản đồ đồng thời từ ThreadID đến đối tượng) hay nó sử dụng một số móc nối JVM để làm việc đó hiệu quả hơn?