34 pthread_exit(
nullptr);
44 pthread_attr_init(&
attr_);
55 pthread_attr_setdetachstate(&
attr_, PTHREAD_CREATE_JOINABLE);
61 throw std::runtime_error(
"ERROR; return code from pthread_create() is " +
62 boost::lexical_cast<std::string>(rc));
70 throw std::runtime_error(
"ERROR; return code from pthread_join() is " +
71 boost::lexical_cast<std::string>(rc));
74 pthread_attr_destroy(&
attr_);
base class for all analysis tools