阅读 Goetz 的“Java Concurrency in Practice”一书,他反对使用对象池(第 11.4.7 节)——主要论点:
1) Java 中的分配比 C 的 malloc 更快 2) 从池中请求对象的线程需要昂贵的同步
我的问题与其说是分配速度慢,不如说是周期性垃圾收集在响应时间中引入异常值,可以通过减少对象池来消除这些异常值。
在使用这种方法时是否有任何我没有发现的问题?本质上,我正在跨线程划分一个对象池...
最佳答案
如果它的线程是本地的那么你可以忘记这个:
2) threads requesting objects from a pool require costly synchronization
作为本地线程,您无需担心从池本身检索的同步问题。
关于java - 线程局部对象池,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3763353/