【发布时间】:2010-09-07 05:49:38
【问题描述】:
以下安全吗?
我是线程新手,我想将一个耗时的进程委托给我的 C++ 程序中的一个单独线程。 使用 boost 库,我编写了如下代码:
thrd = new boost::thread(boost::bind(&myclass::mymethod, this, &finished_flag);
finished_flag 是我班级的布尔成员。当线程完成时,它会设置值,我的程序的主循环会检查该值的变化。 我认为这没关系,因为我只启动一个线程,并且该线程是唯一改变值的东西(除了在我启动线程之前初始化它时) 那么这样可以吗,还是我遗漏了什么,需要使用锁和互斥锁等
【问题讨论】:
标签: c++ multithreading boost-thread