История изменений
Исправление anonymous2, (текущая версия) :
ничего подобного…
утебя :mempool_t::~mempool_t который делает join которому скорей всего это делать не нужно.
уметь правильно выходить из fork нужно учиться)
#include <chrono>
#include <thread>
#include <iostream>
#include <unistd.h>
using namespace std::chrono_literals;
int main()
{
auto thr = std::thread([]()
{
for(int ii = 0; ii < 10; ++ii)
{
std::cout << "id: " << std::this_thread::get_id() << ", " << ii << std::endl;
std::this_thread::sleep_for( 1s );
}
});
int pid = fork();
if(pid)
{
std::cout << "pid: " << pid <<std::endl;
thr.join();
}
else
{
std::cout << (thr.joinable() ? "111" : "222") <<std::endl;
execl("/bin/false", "/bin/false", nullptr);
}
return 0;
}
Исходная версия anonymous2, :
ничего подобного… уметь правильно выходить нужно учиться)
#include <chrono>
#include <thread>
#include <iostream>
#include <unistd.h>
using namespace std::chrono_literals;
int main()
{
auto thr = std::thread([]()
{
for(int ii = 0; ii < 10; ++ii)
{
std::cout << "id: " << std::this_thread::get_id() << ", " << ii << std::endl;
std::this_thread::sleep_for( 1s );
}
});
int pid = fork();
if(pid)
{
std::cout << "pid: " << pid <<std::endl;
thr.join();
}
else
{
std::cout << (thr.joinable() ? "111" : "222") <<std::endl;
execl("/bin/false", "/bin/false", nullptr);
}
return 0;
}