[#BloombergLP-bslmt-ThroughputBenchmark-addThreadGroup-01]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::xref:BloombergLP/bslmt/ThroughputBenchmark.adoc[ThroughputBenchmark]::addThreadGroup
:relfileprefix: ../../../
:mrdocs:

`addThreadGroup` overloads

== Synopses

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

Create a set of threads that repeatedly execute a test function&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
int
xref:BloombergLP/bslmt/ThroughputBenchmark/addThreadGroup-05.adoc[addThreadGroup](
    xref:BloombergLP/bslmt/ThroughputBenchmark/RunFunction.adoc[RunFunction] const& runFunction,
    int numThreads,
    xref:BloombergLP/bsls/Types/Int64.adoc[bsls::Types::Int64] busyWorkAmount);
----

[.small]#xref:BloombergLP/bslmt/ThroughputBenchmark/addThreadGroup-05.adoc[_» more&period;&period;&period;_]#

Create a set of threads that repeatedly execute a test function with per&hyphen;thread initialize and cleanup hooks&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
int
xref:BloombergLP/bslmt/ThroughputBenchmark/addThreadGroup-0e.adoc[addThreadGroup](
    xref:BloombergLP/bslmt/ThroughputBenchmark/RunFunction.adoc[RunFunction] const& runFunction,
    int numThreads,
    xref:BloombergLP/bsls/Types/Int64.adoc[bsls::Types::Int64] busyWorkAmount,
    xref:BloombergLP/bslmt/ThroughputBenchmark/InitializeThreadFunction.adoc[InitializeThreadFunction] const& initializeFunctor,
    xref:BloombergLP/bslmt/ThroughputBenchmark/CleanupThreadFunction.adoc[CleanupThreadFunction] const& cleanupFunctor);
----

[.small]#xref:BloombergLP/bslmt/ThroughputBenchmark/addThreadGroup-0e.adoc[_» more&period;&period;&period;_]#


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