SPI_finish

Name

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