Pool docs imply that single clients have a background monitoring thread, but this is incorrect.
More generally, thread safety and monitoring behaviors are not prominently documented:
- mongocxx::client – not thread-safe and uses the single-threaded monitoring algorithm (stop the world every 60 seconds to scan)
- mongocxx::pool – thread-safe and uses a background thread per server to monitor every 10 seconds
We should also document Server Discovery and Monitoring and Server Selection options configurable via the URI. See mongoc_uri_t docs for an example.