Exceptions thrown by other library components.
class bad_last_alloc; class improper_lock; class invalid_multiple_scheduling; hclass missing_wait; class user_abort;
#include "tbb/tbb_exception.h"
The table below describes when the exceptions are thrown.
Classes for Specific Exceptions.
Exception |
Thrown when... |
---|---|
bad_last_alloc |
|
improper_lock |
A thread attempts to lock a critical_section or reader_writer_lock that it it has already locked. |
invalid_multiple_scheduling |
A task_group or structured_task_group attempts to run a task_handle twice. |
missing_wait |
A push or pop operation on a concurrent_bounded_queue was aborted by the user.wait() is invoked. |
user_abort |
namespace tbb { class bad_last_alloc: public std::bad_alloc { public: const char* what() const throw(); }; class improper_lock: public std::exception { public: const char* what() const throw(); }; class invalid_multiple_scheduler: public std::exception { const char* what() const throw(); }; class missing_wait: public std::exception { public: const char* what() const throw(); }; class user_abort : public std::exception { public: const char* what() const throw(); }; }