|
|
1
0
在我最初的帖子发布一年后,我重新检查了存在性能问题的代码,最终找到了问题的解决方案!这不是STRUCT的创建,我遇到的问题是STRUCT描述符的生命周期。我为每个批创建了一个结构描述符,结果发现这是一个缓慢的部分。 实际上,我有这样的想法:
最后我把它改成了这样:
我还发现,结构描述符可以跨连接使用,因此理论上可以在应用程序中使用某种缓存或描述符池,即使它与最初创建时的连接不同。我没有运行测试来查看单个描述符是否是线程安全的,但我的最佳猜测是它不是。 进行上述更改确实有助于提高性能。根据用户定义类型中的属性数量,通过重用描述符,我得到了2X-6X的改进。类型中的属性越多,我看到的改进就越多。 |