问题报告
纠错本页面
SPI_push
名称
SPI_push -- 下推 SPI 栈以允许递归的 SPI 使用大纲
void SPI_push(void)
描述
在执行另一个可能本身也想用 SPI 的过程之前,应该调用SPI_push
。在SPI_push
之后,SPI 就不再处于一种"已连接"状态,并且除非完成一次新的SPI_connect
否则 SPI 函数调用将被拒绝。这保证了在过程的 SPI 状态和另一个你调用的过程之间的完全隔离。在其他过程返回后,调用SPI_pop
以恢复对你自己的 SPI 状态的访问。
注意SPI_execute
和相关函数在将控制交回给 SQL 执行引擎之前会自动做SPI_push
的等效物,因此在使用那些函数时你无须担心这个问题。只有当你直接调用任何可能包含SPI_connect
调用的代码时,你才真正需要发出SPI_push
和SPI_pop
。