主题:【原创】说说.NET 3.5中的高性能害死集--HashSet -- Highway
共:💬19 🌺63
的确如果底下用的hash table初始大小不同, load factor不同, 则比如Java 的开始第一次 realloc新表时, .NET还没到该点, 那末 realloc总是更耗时间.
不过本来hash map/set的使用, initial size and load factor 应该用户自调. 因为这两者跟实际问题密切相关, 无法普适. 另外一个跟实际问题相关的就是 hash function的选择, Java用的缺省 hasher跟 .NET的很可能不同.
另外有个想法, 如果怀疑是 Java object boxing, 说不定可以不用hash map/set, 直接测两者处理大集合整数, 看差别大不大.
- 相关回复 上下关系8
🙂JAVA 和.NET 再整数上的速度差有没有可能是heap 的 1 虹道 字150 2007-09-05 21:51:35
😉Good Question。为了回答你这个问题, 1 Highway 字1556 2007-09-05 22:36:19
🙂如果把HashMap的起始容量加大 虹道 字47 2007-09-08 15:15:50
🙂很有道理
🙂C#不需要collect garbage么? 请尽量 字0 2007-09-05 22:34:18
😉需要。.NET和Java在这个问题上完全一样 1 Highway 字306 2007-09-05 22:44:50
🙂花楼主! 左轻侯 字35 2007-09-05 20:22:16
🙂国内叫 1 tkvn 字101 2007-09-05 19:09:52