kv_create_put_with_options_op()

#include <kvstore.h>

kv_error_tkv_create_put_with_options_op(kv_operations_t *list,
                   const kv_key_t *key,
                   const kv_value_t *value,
                   const kv_version_t *version,kv_presence_enumif_presence,kv_return_value_version_enum return_info,
                   kv_int_t abort_on_failure) 

kv_execute()を使用して実行する複数ステップ操作の一部としての使用に適した複雑なPUT操作を作成します。実行時に返される操作のセマンティクスは、kv_put()のものと同じです。

パラメータ

  • list

    listパラメータは、このPUT操作が追加される操作シーケンスです。シーケンスは、kv_create_operations()を使用して割り当てられます。

  • key

    keyパラメータは、ストアに書き込むKey/Valueペアのキー部分です。

    kv_execute()への1回のコールで実行されるすべての操作が同じメジャー・キー・パスを共有する必要があること、およびそのメジャー・キー・パスが完了する必要があることに注意してください。

  • value

    valueパラメータは、ストアに書き込むKey/Valueペアの値部分です。

  • version

    versionパラメータは、既存の値がこのパラメータに指定されたバージョンと一致する場合のみレコードをPUTする必要があることを示します。このパラメータは、値を更新するとき、値が最後に読み取られた後に変更されていないことを確認するために使用します。バージョンは、kv_get_version()関数を使用して取得されます。

  • if_presence

    if_presenceパラメータは、ストア内のレコードの有無に基づいてレコードをPUTできる条件を示します。たとえば、KV_IF_PRESENTは、レコードのバージョンがそこにすでに存在する場合のみ、レコードをストアに書き込むことができることを意味します。

    使用可能なすべてのプレゼンス・オプションのリストについては、kv_presence_enumを参照してください。

  • return_info

    return_infoパラメータは、この操作によってkv_execute() 結果リストに返される必要がある情報を指定します。このパラメータによって受け入れられるオプションの詳細は、kv_return_value_version_enumを参照してください。

  • abort_on_failure

    abort_on_failureパラメータは、このPUT操作が失敗した場合に操作全体を中止する必要があるかどうかを示します。PUTの失敗時に操作を中止する場合は、1を指定します。