SPI_finish

名称

SPI_finish — 把你的过程与 SPI 管理器断开.

语法

SPI_finish(void)

输入


输出

int

 
SPI_OK_FINISH 如果正常断开,返回此信息
SPI_ERROR_UNCONNECTED 如果从一个未联接过程调用,返回此信息

描述

SPI_finish 关闭一个现有的与 Postgres 后端的联接.你应该在结束通过 SPI 管理器的操作后调用此函数.

如果 SPI_finish 是在当前没有有效联接的情况下被调用的,你可能会得到一个 SPI_ERROR_UNCONNECTED 的返回.这样做没有什么根本性的错误,这意味着 SPI 管理器不做任何事情.

用法

SPI_finish 必须 作为一个已联接的过程的最后一步被调用,否则你可能得到不可预料的结果!注意:如果你从事务退出(通过 elog(ERROR)),你可以安全的忽略对 SPI_finish 的调用.

算法

SPI_finish 执行下列操作:
•
断开你的过程与 SPI 管理器的连接并且释放所有你的过程自 SPI_connect 起通过 palloc 分配的存储器.这些存储器不能再利用!请参考存储器管理.