最新回答 / 實時編程
HashMap。本身就不是線程安全的,所以 你這個寫法 我暫時不確定 是不是能正確的運行?但是既然不是線程安全的? 所以 我覺得 不可以這樣寫如果你加個鎖 確實可以 變成安全的 操作但是就會 變成多線程 競爭鎖? ?非常消耗性能雖然實現了 類似功能 但是性能 太低?所以JDK 不會這樣設計
2020-05-07
最贊回答 / qq_Forever淺唱此生_0
小數值取數組是java做的緩存和引用沒關系,實際沒法用Integer做引用是因為Integer的值是final的,和String一樣,創建后沒辦法改變自身的值,計算后返回的都是一個新的Integer/String
2020-03-24
最新回答 / TimAndy
golang 雖然不是線程模型, 但是有協程. 可以把協程理解成其他語言的輕量級線程.ThreadLocal for golang 無內存泄露, 無競爭,高性能, 不修改golang源碼.支持 go1.18 泛型, 支持 386, amd64, arm, arm64 平臺.支持 go1.13-1.18 版本, 在 linux,windows,mac 上均測試通過.項目地址 https://github.com/timandy/routine
2020-03-15
最新回答 / 慕碼人118462
檢查引入的包是不是正確。檢查有沒有在idea中添加插件idea中需要設置開啟自動開啟注解另外,你的curl read 數據不正確 可能多線程并非造成的,不一定跟@Data注解有關系
2020-03-03
最贊回答 / qq_Forever淺唱此生_0
這個HashSet和HashMap的多線程調用時是一樣的風險,在擴容時有可能導致死循環,所以要用同步的容器或者同步代碼塊去調用“添加”的方法
2020-02-14
講師回答 / 求老仙
秋田君說的也很不錯, 我這里補充下, Map<Thread, T>這種結構,hash表沖突會很嚴重,舉個例子。map.put(thread1, 100);map.put(thread1, 200);map.put(thread1, 300);你發現沒有,一個map put了三個值,那取值的時候, 怎么辦呢?
2020-02-10
最新回答 / qq_慕雪7502798
“用兩層HashMap是由于一個線程中可能會擁有多個ThreadLocal成員變量,所以內層HashMap是為了保存同一個線程中的不同ThreadLocal變量?!闭f法不對吧? 如果一個線程中有兩個ThreadLocal成員變量,那么按照你說的,他們的key是當前線程ThreadLocal值,那不是key沖突了?
2020-01-31