使用 SDK 宏分配资源

Vertica SDK 提供了三个用于分配内存的宏:

  • vt_alloc 可分配内存块以用于容纳特定数据类型(vint、struct 等)。

  • vt_allocArray 可分配内存块以用于容纳特定数据类型的数组。

  • vt_allocSize 可分配任意大小的内存块。

所有这些宏都可以从 Vertica 管理的内存池分配内存。让 Vertica 管理 UDx 的内存的主要优点是,内存会在 UDx 已完成之后自动回收。这样可确保 UDx 中不会出现内存泄漏。

由于 Vertica 会自动释放该内存,因此请勿尝试释放您通过以上任一宏分配的任何内存。尝试释放该内存将导致发生运行时错误。