线程有join和detach两种结束方式,join:主线程等待该线程结束,detach:主线程不等待该线程结束,让其在后台运行。join须要注意选择适当的位置,在线程启动后可能会抛出异常,在try/catch中也应该考虑join(一种方式是使用“资源获取即初始化方式”(RAII,Resource Acquisition Is Initialization),而且提供一个类,在析构函数中使用join())。detach须要注意不要引用主线程的临时变量,以致于出现悬空的状况。函数
thread 若是新建线程的函数,须要传递引用参数,须要使用ref显示传递,不然会传递拷贝后的引用ui