Haskell Data.Attoparsec.ByteString是否使用;零拷贝”;惯性导航与制导?
比如说。内部使用 这是否意味着它只是通过testring引用输入?可能没有,如果有的话,有办法做到这一点吗Haskell Data.Attoparsec.ByteString是否使用;零拷贝”;惯性导航与制导?,haskell,bytestring,attoparsec,Haskell,Bytestring,Attoparsec,比如说。内部使用 这是否意味着它只是通过testring引用输入?可能没有,如果有的话,有办法做到这一点吗 激发动机的用例是一个大(>2gb)文件,我想将其映射到内存中,并提取指向映射内存的ByteString。是的,在ByteString上的所有类似子字符串的操作都是O(1),如中所示,并使用不同的偏移量/长度进行浅拷贝。 如果您不需要,可以使用copy获取解析结果的完整副本,这样就可以对原始的巨大字符串进行垃圾收集 另外,考虑懒惰>代码>化身> MMAP和AttoPARSSEC> ,在大块的
激发动机的用例是一个大(>2gb)文件,我想将其映射到内存中,并提取指向映射内存的ByteString。是的,在ByteString上的所有类似子字符串的操作都是O(1),如中所示,并使用不同的偏移量/长度进行浅拷贝。 如果您不需要,可以使用
copy
获取解析结果的完整副本,这样就可以对原始的巨大字符串进行垃圾收集
另外,考虑<代码>懒惰>代码>化身> MMAP和