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

了解,我们这边讨论一下,看看是否能够当做一个新的需求点去实现。
页: 1 2 [3]
查看完整版本: GcExcel 7.2.1 processTemplate无结果