logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

bson_cross_platform_notes - Cross Platform Notes

Author

       MongoDB, Inc

Endianness

       The BSON specification dictates that the encoding format is in little-endian. Many implementations simply
       ignore  endianness  altogether and expect that they are to be run on little-endian. Libbson supports both
       Big and Little Endian systems. This means we use memcpy() when appropriate instead of  dereferencing  and
       properly  convert to and from the host endian format. We expect the compiler intrinsics to optimize it to
       a dereference when possible.

Name

       bson_cross_platform_notes - Cross Platform Notes

Threading

       Libbson's data structures are NOT thread-safe. You are  responsible  for  accessing  and  mutating  these
       structures from one thread at a time.

       Libbson  requires  POSIX  threads (pthreads) on all UNIX-like platforms. On Windows, the native threading
       interface is used. Libbson uses your system's threading library to safely generate unique ObjectIds,  and
       to provide a fallback implementation for atomic operations on platforms without built-in atomics.

See Also