21 #ifndef __TBB_task_scheduler_init_H 22 #define __TBB_task_scheduler_init_H 26 #if __TBB_SUPPORTS_WORKERS_WAITING_IN_TERMINATE 67 #if __TBB_SUPPORTS_WORKERS_WAITING_IN_TERMINATE 99 #if __TBB_SUPPORTS_WORKERS_WAITING_IN_TERMINATE 100 #if TBB_USE_EXCEPTIONS 101 void blocking_terminate() {
103 internal_blocking_terminate(
true );
106 bool blocking_terminate(
const std::nothrow_t&)
__TBB_NOEXCEPT(
true) {
108 return internal_blocking_terminate(
false );
110 #endif // __TBB_SUPPORTS_WORKERS_WAITING_IN_TERMINATE 123 #if TBB_USE_EXCEPTIONS 126 initialize( number_of_threads, thread_stack_size );
#define __TBB_ASSERT(predicate, comment)
No-op version of __TBB_ASSERT.
#define __TBB_NOEXCEPT(expression)
static const int automatic
Typedef for number of threads that is automatic.
void __TBB_EXPORTED_METHOD initialize(int number_of_threads=automatic)
Ensure that scheduler exists for this thread.
bool is_active() const
Returns true if scheduler is active (initialized); false otherwise.
internal::scheduler * my_scheduler
static const int deferred
Argument to initialize() or constructor that causes initialization to be deferred.
#define __TBB_EXPORTED_METHOD
static int __TBB_EXPORTED_FUNC default_num_threads()
Returns the number of threads TBB scheduler would create if initialized by default.
void poison_pointer(T *__TBB_atomic &)
Class delimiting the scope of task scheduler activity.
#define __TBB_EXPORTED_FUNC
std::size_t stack_size_type
task_scheduler_init(int number_of_threads=automatic, stack_size_type thread_stack_size=0)
Shorthand for default constructor followed by call to initialize(number_of_threads).
#define TBB_USE_CAPTURED_EXCEPTION
~task_scheduler_init()
Destroy scheduler for this thread if thread has no other live task_scheduler_inits.
void __TBB_EXPORTED_METHOD terminate()
Inverse of method initialize.
bool internal_terminate(bool blocking)