Namespaces
Variants
Actions

std::thread::~thread

From cppreference.com
< cpp‎ | thread‎ | thread
 
 
Concurrency support library
(C++11)
(C++20)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++17)
(C++11)
(C++11)
(C++17)
(C++11)
(C++14)
(C++11)
(C++11)
(C++11)
(C++11)
(C++20)
(C++20)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++26)
(C++26)
(C++26)
(C++26)
(C++11)
(C++20)
(C++11)
(C++11)(deprecated in C++20)
(C++11)(deprecated in C++20)
(C++11)
(C++11)(deprecated in C++26)
 
 
~thread();
(since C++11)

Destroys the thread object.

If *this has an associated thread (joinable() == true), std::terminate () is called.

[edit] Notes

A thread object does not have an associated thread (and is safe to destroy) after

  • it was default-constructed.
  • it was moved from.
  • join() has been called.
  • detach() has been called.

[edit] Example

Run this code
#include <thread>
using namespace std::chrono_literals;
 
int main()
{
 auto bleah = std::thread {[]{ std::this_thread::sleep_for (13ms); }};
 
} // ~thread calls std::terminate()

Possible output:

terminate called without an active exception

[edit] See also

if the thread is joinable, then a stop is requested and the thread joins
(public member function of std::jthread) [edit]
Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/thread/thread/%7Ethread&oldid=161283"

AltStyle によって変換されたページ (->オリジナル) /