2014-03-28 41 views
0

我正在做的工作要求我们存储CRC16校验和以及数据行,最近我发现sun.misc.CRC16的性能是我们正在运行的代码中的主要瓶颈之一。sun.misc.CRC16使用什么实现CRC-16?

我从搜索中发现,通过查找表来实现CRC16会给我带来的性能提升,但也有很多不同的标准。由于它可能需要一些时间才能获得有关用户实际需要的任何答案,与此同时,我想用其查找表功能等价物替换sun.misc.CRC16。然而,the only real documentation/source I am able to find on the class itself并没有真正详细说明 - 或者至少,我对CRC的理解还不够好。

回答

0

那么,它使用初始值为零,多项式为0x1021,并且不执行最终的异或。

我必须说我很震惊地发现它不使用表格。该技术自20世纪80年代中期以来一直存在。

当然,你不应该首先使用sun.misc。*类。

+0

感谢您的回应 - 我做了一些更多的狩猎,并设法找到[本指南](http://www.zlib.net/crc_v3.txt),它教会了我足以实现我自己的工作,虽然我当然不会说我在这一点上是一个主题专家,哈哈。 – Kyune