#include <iostream>
#include <thread>
using std::cout;
using std::endl;
class TestThread
{
public:
void operator()()
{
for (int i = 0; i < 10; i++)
cout << "operator()()" << endl;
}
};
int main()
{
std::thread obj( (TestThread()) );
for (int i = 0; i < 4; i++)
cout << "main()" << endl;
cout << "Waiting For Thread to finish" << endl;
obj.join();
cout << "end main()" << endl;
return 0;
}
/*
run:
operator()()
main()
main()
operator()()
main()
operator()()
main()
operator()()
Waiting For Thread to finish
operator()()
operator()()
operator()()
operator()()
operator()()
operator()()
end main()
*/