stdthread

    1热度

    3回答

    我要调用的方法(在这个例子中的std ::线程构造函数) 与拉姆达函数,传递int值: int a=10; std::thread _testThread = thread([a](int _a){ //do stuff using a or _a ? }); _testThread.detach(); 我不知道如何正确地写这样的功能,我得到这个错误: C2064:术语不评估

    77热度

    3回答

    有时我不得不使用std::thread加快我的申请。我也知道join()等待,直到一个线程完成。这是很容易理解的,但什么叫detach()而不是调用它的区别? 我认为没有detach(),该线程的方法将独立工作,使用一个线程。 不分离: void Someclass::Somefunction() { //... std::thread t([ ] { print

    6热度

    1回答

    可以说我有以下类 class A { public: A() { my_thread=std::thread(std::bind(&A::foo, this)); } ~A() { if (my_thread.joinable()) { my_thread.join(); }

    4热度

    3回答

    创建的shared_ptr 的一个实例,考虑下面的代码: class A { .... shared_ptr<std::thread> mThread; void Step(); void LaunchTrhead(); } void A::LaunchThread() { ... mThread=make_shared<std

    0热度

    3回答

    我想创建线程出模板函数给线程另一个模板函数。 我附加了一个给出相同错误的情况的expample。给线程一个非模板化的函数(即这里有一个带有int,另一个带有float)不会导致错误。 但是,因为我打算使用这个函数与许多不同的类型,我不想指定模板类型。此外,我尝试了几种模板类型的指定(例如std::thread<T>或std::thread(function<T>),但没有取得任何成功。 问题:如何

    1热度

    1回答

    我想一个向量发送到另一个线程的功能参数: void foo(){} const int n = 24; void Thread_Joiner(std::vector<thread>& t,int threadNumber) { //some code } int main() { std::vector<thread> threads(n, thread(foo))

    3热度

    1回答

    我有一个程序正在分析一些文件(最多10000个)。 平台是带有unix操作系统的AMD64。语言是C++。 该程序目前正在为每个文件分配主进程(直到达到限制,然后等待,直到孩子完成)。 孩子正在启动boost :: thread来执行分析功能,然后在它创建的boost :: thread上执行boost :: timed_join。 所以,我现在有一些问题。 用一个更轻量级的选项替换叉是否合理?我

    6热度

    1回答

    有几种方法可以实现多线程。最终由C++ 11标准带来了std::thread,但boost::thread可以被有效地使用。每种技术都有特定的语法和内容,但大致用于CPU并行编程。但他们有不同的效果。例如,我知道MPI和OpenMP用于不同的内存模型。 我也知道,技术的选择实际上并不是专有的,所以可以使用另一种技术(MPI和OpenMP)。他们如何用于不同的效果,但仍然使用相同的源(CPU)? 如

    2热度

    1回答

    我正在将多线程中值函数作为大型项目的一部分工作。我有一点C++经验。下面的中值函数应该采用3维向量的向量,并返回一个3维向量,其中每个条目是输入向量中该索引中所有条目的中值。所以如果输入是< < 3,2,1>,< 1,2,3>,< 2,2,2 >>,则返回< 2,2,2>。该代码将用于实现实时视频中的中值模糊,因此希望对其进行多线程处理。 #include <thread> #include <

    1热度

    1回答

    我正在试验C++标准线程。我写了一个小的基准来测试性能开销和整体吞吐量。它的原理是在一个或几个线程中运行10亿次循环的循环,从而不时地暂停。 在第一个版本中,我在共享内存中使用了计数器(即正常变量)。我exepected以下的输出: Sequential 1e+009 loops 4703 ms 212630 loops/ms 2 thrds:t1 1e+009 loops 4734 ms