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 分配的存储器.这些存储器不能再利用!请参考存储器管理.