std::thread::join
De cppreference.com
|
|
This page has been machine-translated from the English version of the wiki using Google Translate.
The translation may contain errors and awkward wording. Hover over text to see the original version. You can help to fix errors and improve the translation. For instructions click here. |
<metanoindex/>
<tbody> </tbody> void join(); |
(desde C++11) | |
Bloqueia o segmento atual até que o segmento identificado por
*this termina sua execução.Original:
Blocks the current thread until the thread identified by
*this finishes its execution.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Parâmetros
(Nenhum)
Original:
(none)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Valor de retorno
(Nenhum)
Original:
(none)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Exceções
std::system_error se
joinable() == false ou ocorre um erro.Original:
std::system_error if
joinable() == false or an error occurs.The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
You can help to correct and verify the translation. Click here for instructions.
Exemplo
#include <iostream>
#include <thread>
#include <chrono>
void foo()
{
// simulate expensive operation
std::this_thread::sleep(std::chrono::seconds(1));
}
void bar()
{
// simulate expensive operation
std::this_thread::sleep(std::chrono::seconds(1));
}
int main()
{
std::cout << "starting first helper...\n";
std::thread helper1(foo);
std::cout << "starting second helper...\n";
std::thread helper2(bar);
std::cout << "waiting for helpers to finish...\n";
helper1.join();
helper2.join();
std::cout << "done!\n";
}
Saída:
starting first helper...
starting second helper...
waiting for helpers to finish...
done!
Veja também
permite a thread para executar de forma independente do identificador segmento Original: permits the thread to execute independently from the thread handle The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função pública membro) | |
verifica se o segmento está acopláveis, ou seja, potencialmente executado no contexto paralelo Original: checks whether the thread is joinable, i.e. potentially running in parallel context The text has been machine-translated via Google Translate. You can help to correct and verify the translation. Click here for instructions. (função pública membro) | |