I create boost::thread object with a new operator and continue without waiting this thread to finish its work:
boost::thread
new
void do_work() {
I suggest you use boost::shared_ptr, so you won't take care when to delete thread object.
boost::shared_ptr thread(new boost::thread(&do_work));