Provided by: libbson-doc_1.3.1-1_all 

NAME
bson_context_t - BSON OID Generation Context
SYNOPSIS
#include <bson.h>
typedef enum
{
BSON_CONTEXT_NONE = 0,
BSON_CONTEXT_THREAD_SAFE = (1 << 0),
BSON_CONTEXT_DISABLE_HOST_CACHE = (1 << 1),
BSON_CONTEXT_DISABLE_PID_CACHE = (1 << 2),
#if defined(__linux__)
BSON_CONTEXT_USE_TASK_ID = (1 << 3),
#endif
} bson_context_flags_t;
typedef struct _bson_context_t bson_context_t;
bson_context_t *bson_context_get_default (void) BSON_GNUC_CONST;
bson_context_t *bson_context_new (bson_context_flags_t flags);
void bson_context_destroy (bson_context_t *context);
DESCRIPTION
The bson_context_t structure is context for generation of BSON Object IDs. This context allows for
specialized overriding of how ObjectIDs are generated based on the applications requirements. For
example, disabling of PID caching can be configured if the application cannot detect when a call to
fork(3) has occurred. \&.
EXAMPLE
#include <bson.h>
int main (int argc, char *argv[])
{
bson_context_t *ctx = NULL;
bson_oid_t oid;
/* use default context, via bson_context_get_default() */
bson_oid_init (&oid, NULL);
/* specify a local context for additional control */
ctx = bson_context_new (BSON_CONTEXT_DISABLE_PID_CACHE | BSON_CONTEXT_THREAD_SAFE);
bson_oid_init (&oid, ctx);
bson_context_destroy (ctx);
return 0;
}
COLOPHON
This page is part of libbson. Please report any bugs at https://jira.mongodb.org/browse/CDRIVER.
libbson 2016‐01‐18 BSON_CONTEXT_T(3)