boost-thread

    3热度

    1回答

    我有一个使用VS2010开发的应用程序,它使用Boost.Thread 1.48。 目前我试图将应用程序移植到Linux上(在Debian 7上运行)。 当我试着使用GCC 4.6或铛编译它,我收到以下错误 error: ‘class boost::mutex’ has no member named ‘timed_lock’ 是否有任何预处理器定义或编译器标志我必须设置? 编辑: 好的,我发

    0热度

    1回答

    我有一个类动态实例化(因为指针是通过C接口来回传递的),它具有成员加速线程。在一个成员函数下面的代码被执行: _thrd = boost::thread(boost::bind(&cls::thrdProc, this, other vars)); 我知道以下内容: 线程创建 由于螺纹过程是相同的类的非静态成员函数“这个”作为传递第一个论点。 我试过了,没有boost :: bind。 同样在

    2热度

    1回答

    我有一些对象,每个与boost :: shared_mutex(我需要共享/唯一锁定功能)相关联。 在某些代码中,我需要一次获得多个对象的唯一所有权。 for (FileMetaData* entry : smd->fileSet) { entry->fileMutex.lock(); } // some critical work for (FileMetaData* ent

    0热度

    1回答

    首先,我不太了解C++或QT创建者,但是我下载了一个旧的开源项目,并且试图使用QT Creator和QT 5.1.1编译它。 我已经得到传递了很多错误,但现在我被困在了boost线程中。 error: 'boost/thread.hpp' file not found Autocomplete似乎暗示它存在。我尝试下载并编译源代码,将.a文件复制到clang_64/lib文件夹,并将LIBS

    0热度

    1回答

    我使用boost调度器(io_service)异步执行“methodB”。在这个方法中,我想保留一个指向B类实例的指针,所以我使用shared_ptr。但在下面的例子中,我想知道在“methodA”范围之后,指针仍然可以访问到“methodB”中,或者指针refcounter将等于零。 void ClassA::methodA(){ shared_ptr<ClassB> pointer(

    0热度

    1回答

    我有一个boost条件变量,我正用它来睡眠一个线程。 boost::condition_variable m_cond; 目前我正在使用这种方式,在这种情况下,我正在传递锁和它必须睡眠的秒数。目前它会睡10秒 if(!m_cond.timed_wait(lock, boost::posix_time::seconds(10))){ } 有没有办法以毫秒为单位做同样的事情?我可以通过它

    1热度

    1回答

    ¿如何中断正在执行MKL子例程的线程?并在其他第三方库?我的线程是使用boost :: thread创建的,通常我使用中断来阻止我的线程(http://www.boost.org/doc/libs/1_41_0/doc/html/thread/thread_management.html#thread.thread_management.interruption),但是如何才能停止执行MKL代码的

    0热度

    1回答

    boost :: condition_variable :: notify_one()函数是否自动恢复执行它正在解锁的线程,或者是未定义的并取决于OS如何调度线程? 我并不都熟悉线程以及操作系统如何与它们交互,所以对notify_one()的实现的任何洞察都会有所帮助。 感谢

    0热度

    1回答

    当我尝试在我的某个DLL中使用Boost.Log时,我在dllinit.cpp中收到一个断言。 我有一个tools.dll,其中包含我的日志记录工具,我试图用Boost.Log实现日志记录。 这个tools.dll被另一个helper.dll引用,并且这两个DLL都在应用程序中使用。 但是,当我启动应用程序时,我得到了ASSERT。 这发生在Boost 1.54和(包含)Boost.Log以及Bo

    0热度

    1回答

    boost::atomics::detail::lockpool::get_lock_for(void const volatile*)", referenced from: boost::thread_detail::enter_once_region(boost::once_flag&) in libboost_thread-mt.a(once.o) boost::thread_detai