如何在 Clion 中启用多线程? [复制]

Posted

技术标签:

【中文标题】如何在 Clion 中启用多线程? [复制]【英文标题】:How to enable multithreading in Clion? [duplicate] 【发布时间】:2016-11-20 09:53:39 【问题描述】:

我写了一个简单的代码来测试C++11 中的threading。但我无法在Clion IDE 中运行它,它会在红线中显示以下错误。

terminate called after throwing an instance of 'std::system_error'
  what():  Enable multithreading to use std::thread: Operation not permitted

进程以退出代码134结束。

关于我的系统的一些细节:

linux ubuntu 14.10 C++11

我猜代码对于解决这个问题并不是那么重要,但我在这里粘贴它:

#include <iostream>
#include <thread>

using namespace std;

void task1 () 
    cout << "Task 1::"<<endl;


int main() 
    thread t1(task1);
    t1.join();
    return 0;

【问题讨论】:

也许你需要指定C++11或latet? 对不起。是的,它是 C++11。谢谢@kometen 【参考方案1】:

在我项目的CMakeList.txt文件中,我只是在下面一行添加了一条命令-pthread

set(CMAKE_CXX_FLAGS "$CMAKE_CXX_FLAGS -std=c++11")

看起来像

set(CMAKE_CXX_FLAGS "$CMAKE_CXX_FLAGS -std=c++11 -pthread")

它解决了问题。

【讨论】:

以上是关于如何在 Clion 中启用多线程? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Visual Studio 2017 中为 Linux 应用启用多线程

启用多线程 Eclipse C++

C++ CodeLite 启用多线程?

java Servlet 的多线程如何工作? [复制]

29多线程(线程池定时器)将一个文件复制多次拆分文件并合并多线程复制文件

29多线程(线程池定时器)将一个文件复制多次拆分文件并合并多线程复制文件