首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Data.Text.Lazy.Builder对Text.Builder

Data.Text.Lazy.Builder对Text.Builder
EN

Stack Overflow用户
提问于 2018-12-01 16:59:43
回答 1查看 92关注 0票数 2

模块Data.Text.Lazy.Builder (文本包)和模块Text.Builder (文本生成器)之间有什么区别?我是说目标,效率和可能性?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-01 21:31:42

我没有使用text-builder,但是它声称是一个“高效的严格文本构建器”(强调我的),而标准的Data.Text.Lazy.Builder构建了懒惰的Text (本质上是UTF-16数组块的链接列表)。这两个库(Builder的思想)的目的是在您通过追加来积累字符串时避免大量的分配和复制。

在我看来,text-builder库主要是将自己限制为静态已知大小的类型。我认为它存在的原因是,这可能比text中的普通构建器更有效;在run中,您只需分配一次,然后将其序列化到数组中,在Data.Text.Lazy.Builder中,您可能需要在执行过程中增长或分配新的块。如果您真正需要的是一个严格的Text,那么无论如何您可能需要支付复制所有这些块的费用(我也不确定,这可能还需要额外复制中间严格的Text )。

但这主要是猜测。也许尼基塔·沃尔科夫会插话。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53573086

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档