WhiteSong
发表于 2024-12-11 17:10:18
在处理用户提供的模板之前,是不是可以做一些校验,比如用IWorksheet.getUsedRange(),如果出现行数,列数特别大的情况,就可以不处理这个模板;再细化一点,可以通过枚举UsedRangeType具体定位模板中哪些feature占了大片区域。
以上应该能做一些事前的检查判断,防止这种跑两个小时的情况出现。
Joestar.Xu
发表于 2024-12-12 08:53:20
WhiteSong 发表于 2024-12-11 17:10
在处理用户提供的模板之前,是不是可以做一些校验,比如用IWorksheet.getUsedRange(),如果出现行数,列数 ...
{:5_117:}
Aria
发表于 2024-12-13 14:17:14
好的,谢谢。模版getUsedRange后很大的场景可以做提前校验和避免渲染,还有一大部分性能问题是模版本身不大,但扩展后很大。
同意你们的观点,确实模版语法,也是类似于一种开放的SQL或编程语言,需要使用者有一定的经验。但SQL也同时提供了查看SQL执行计划,让编程者知道自己的SQL性能消耗在哪里。gcexcel是否未来计划增加类似的排查能力。
Joestar.Xu
发表于 2024-12-13 16:43:03
了解,我们这边讨论一下,看看是否能够当做一个新的需求点去实现。