Class MarkableCrc32

  • All Implemented Interfaces:

    public class MarkableCrc32
    extends java.lang.Object
    A pure-java implementation of the CRC32 checksum that uses the same polynomial as the built-in native CRC32. This is to avoid the JNI overhead for certain uses of Checksumming where many small pieces of data are checksummed in succession. The current version is ~10x to 1.8x as fast as Sun's native in Java 1.6 Copied from Hadoop 2.6.3. The code agrees with the following file in the 2.6.3 tag:;a=blob_plain; f=hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/; hb=2120de588b92b9f22b1cc4188761d6a8c61aa778

    This class is Not ThreadSafe

    See Also:
    • Constructor Summary

      Constructor Description
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      long getValue()  
      void mark()  
      void reset()  
      void update​(byte[] b, int offset, int len)  
      void update​(int b)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface

        update, update
    • Constructor Detail

      • MarkableCrc32

        public MarkableCrc32()
    • Method Detail

      • getValue

        public long getValue()
        Specified by:
        getValue in interface
      • reset

        public void reset()
        Specified by:
        reset in interface
      • mark

        public void mark()
      • update

        public void update​(byte[] b,
                           int offset,
                           int len)
        Specified by:
        update in interface
      • update

        public final void update​(int b)
        Specified by:
        update in interface