[#BloombergLP-bslmt-Configuration]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::Configuration
:relfileprefix: ../../
:mrdocs:

This `struct` provides a namespace for a suite of functions that are used to manage the configuration of default values used in `bslmt`&period; Specifically, these functions manage the default value of thread stack size and provide access to the platform&apos;s native guard size, but may be extended to govern more traits in the future&period;

== Synopsis

Declared in `&lt;bslmt&lowbar;configuration&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
struct Configuration;
----

== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslmt/Configuration/defaultThreadStackSize.adoc[`defaultThreadStackSize`] 
| Return the value set by the last call to `setDefaultThreadStackSize`&semi; if `setDefaultThreadStackSize` has never been called, return `ThreadAttributes&colon;&colon;BSLMT&lowbar;UNSET&lowbar;STACK&lowbar;SIZE` which will signal thread creation to use the thread stack size native to the platform&period;
| xref:BloombergLP/bslmt/Configuration/nativeDefaultThreadGuardSize.adoc[`nativeDefaultThreadGuardSize`] 
| Return the default thread stack guard size (in bytes) determined by the underlying platform&period; Note that this value reflects semantics, and may be influenced by the choice of platform, environment variables, compiler&sol;linker options, or shell configuration, and may vary somewhat among different platforms&period;
| xref:BloombergLP/bslmt/Configuration/nativeDefaultThreadStackSize.adoc[`nativeDefaultThreadStackSize`] 
| Return the &quot;native&quot; default thread stack size (in bytes) as determined by the underlying platform&period; Note that this value may be influenced by the choice of platform, environment variables, compiler&sol;linker options, or shell configuration, and typically varies wildly among different platforms&period;
| xref:BloombergLP/bslmt/Configuration/recommendedDefaultThreadStackSize.adoc[`recommendedDefaultThreadStackSize`] 
| Return a &quot;reasonable&quot; value for the default thread stack size (in bytes), which, unlike `nativeDefaultThreadStackSize`, is constant across all platforms of a given word size&period; This value is large enough to guarantee that an automatic array of at least 250 &ast; 1024 pointers may be declared in the top level routine of the thread&period;
| xref:BloombergLP/bslmt/Configuration/setDefaultThreadStackSize.adoc[`setDefaultThreadStackSize`] 
| Set the default thread stack size to the specified `numBytes`&period; If a minimum thread stack size is known for the underlying platform (i&period;e&period; `PTHREAD&lowbar;STACK&lowbar;MIN` is defined) and `numBytes` is below that minimum, the stack size will be that minimum&period; The behavior is undefined unless `0 &lt;&equals; numBytes`&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
