SPI_finish

Name

SPI_finish -- ユーザー定義のプロシージャをSPIマネージャから切断します。

Synopsis

SPI_finish(void)

入力

ありません。

出力

int

正常に切断された場合、SPI_OK_FINISH です。
未接続なプロシージャから呼び出された場合SPI_ERROR_UNCONNECTEDです。

説明

SPI_finishは、既存のSPIマネージャへの接続を閉じます。プロシージャの現在の呼び出しにおいて必要とするSPI操作が完了した後この関数を呼び出す必要があります。

有効な接続が存在しない状態でSPI_finishが呼び出された場合、SPI_ERROR_UNCONNECTEDというエラーが返ります。このエラーコードについては特に問題はありません。 これはSPIマネージャが何も行わなかったということを意味しています。

使用方法

SPI_finish必ず接続したプロシージャの最後の段階で呼び出されなければいけません。 さもないと、予測できない結果が起きるかもしれません。しかし、トランザクションをelog(ERROR)を使って中断した場合は、SPI_finishの呼び出しを省略しても問題はありません。この場合は SPI は自身で後始末を行います。

アルゴリズム

SPI_finish は以下を行います。ユーザー定義のプロシージャをSPIマネージャから切断し、SPI_connectを実行してからそのプロシージャがpallocを使用して獲得したメモリをすべて解放します。このメモリはもはや使用できません。メモリ管理の項を参照して下さい。