NATS C Client with JetStream and Streaming support  3.9.1
The nats.io C Client, Supported by Synadia Communications Inc.
KeyValue store watcher

Functions

NATS_EXTERN natsStatus kvWatcher_Next (kvEntry **new_entry, kvWatcher *w, int64_t timeout)
 Returns the next entry for this watcher. More...
 
NATS_EXTERN natsStatus kvWatcher_Stop (kvWatcher *w)
 Stops the watcher. More...
 
NATS_EXTERN void kvWatcher_Destroy (kvWatcher *w)
 Destroys the KeyValue watcher object. More...
 

Detailed Description

These functions allow to receive updates for key(s) on a given bucket.

Warning
EXPERIMENTAL FEATURE! We reserve the right to change the API without necessarily bumping the major version of the library.

Function Documentation

◆ kvWatcher_Next()

NATS_EXTERN natsStatus kvWatcher_Next ( kvEntry **  new_entry,
kvWatcher w,
int64_t  timeout 
)

Returns the next entry for this watcher. The entry may be NULL (with NATS_OK status) to indicate that the initial state has been retrieved.

If a thread is waiting on this call, it can be canceled with a call to kvWatcher_Stop.

Note
The entry should be destroyed to release memory using kvEntry_Destroy.
Parameters
new_entrythe location where to store the pointer to the kvEntry object.
wthe pointer to the kvWatcher object.
timeouthow long to wait (in milliseconds) for the next entry.

◆ kvWatcher_Stop()

NATS_EXTERN natsStatus kvWatcher_Stop ( kvWatcher w)

Stops the watcher. Stopping a stopped watcher returns NATS_OK.

After this call, new and existing calls to kvWatcher_Next (that are waiting for an update) will return with NATS_ILLEGAL_STATE.

Parameters
wthe pointer to the kvWatcher object.

◆ kvWatcher_Destroy()

NATS_EXTERN void kvWatcher_Destroy ( kvWatcher w)

Releases memory allocated for this kvWatcher object.

Parameters
wthe pointer to the kvWatcher object.