热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Windows下无法使用C++11标准thread类

问题描述最近需要在windows平台使用C++多线程编程,编译时提示错误threadisnotamemberofstd,oryoumaybeforget#include

问题描述

最近需要在 windows 平台使用 C++ 多线程编程,编译时提示错误 thread is not a member of std, or you maybe forget '#include '

下面是出现此问题的环境背景:



  1. 已经添加 thread 头文件

  2. 编译时已添加 -pthread 参数

  3. MinGW 版本为 (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0,支持多线程


解决方法

导致这个问题的原因是 MinGW GCC 缺少 C++11 标准的线程类实现,需要从 github 下载相关的头文件,重新编译即可使用线程库。

下载地址:meganz/mingw-std-threads

将上述头文件下载完成后放入本地 MinGW 环境中,我的路径是:./mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/


使用方法

#include
#include
void read() {
std::cout <<"Success!" <}
int main(int argc, char* argv[]) {
std::thread th(read);
}

编译命令:g++ main.cpp -o main -pthread

执行:./main.exe



推荐阅读
  • Java的Synchronized原理与Callable接口实例分析
    这篇“Java的Synchronized原理与Callable接口实例分析”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具 ... [详细]
  • 第二章 基础技术
    一、运行单一实例通过创建系统命名互斥对象的方式来实现1、实现原理通过CreateMutex函数创建一个命名的互斥对象,如果对象创建成功,而且通过调用GetLastError函数获取 ... [详细]
  • 浅析Python模块之间的相互引用问题
    这篇文章主要介绍了Python模块之间的相互引用问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值, ... [详细]
  • #B.BalancedBreakdown#####1.题目大意:给定一个n,从n中不断分离回文数(翻转后大小相同的数字)问最少需要多少步,输出最少步数以及一种方案(方案不唯一)## ... [详细]
  • win10安装Linux子系统 + ROS(告别双系统和虚拟机)
    win10安装Linux子系统+ROS(告别双系统和虚拟机),Go语言社区,Golang程序员人脉社 ... [详细]
  • 传统c语言开发,C语言系统开发
    本文目录一览:1、简述开发一个c语言程序的步骤 ... [详细]
  • 我为什么参加DevOps Master俱乐部? ... [详细]
  • Windows下用cpu模式跑通目标检测py-faster-rcnn 的demo.py
    关键字:Windows、cpu模式、Python、faster-rcnn、demo.py声明:原文发表在博客园,未经允许不得转载!!!本篇blog过程已经多名读者实践验证,有人反馈报错TypeEr ... [详细]
  • 深入分析 Linux 内核链表转
    引用地址:http:www.ibm.comdeveloperworkscnlinuxkernell-chainindex.html一、链表数据结构简介链表是一种常用的 ... [详细]
  • Day33 并发编程(三) 线程池进程池,协程
    1.进程池和线程池开进程和开线程都需要消耗资源,只不过线程相比进程耗费的资源较小,但是计算机的硬件是有限制的,我们不能无限制的去开启进程或者线程.进程池和线程池能帮助我们在计算机承 ... [详细]
  • Python并发复习
    一、多线程的调用threading模块建立在thread模块之上。thread模块以低级、原始的方式来处理和控制线程,而threading模块通过对thread进行二次封装,提供了 ... [详细]
  • 但它似乎没有意义.我从字符串中定义一个新的gson对象:publicvoidconvertToJson(){GsongsonnewGson();ObjectgsonC ... [详细]
  • 什么是单例模式?有几种?单例模式:某个类的实例在多线程环境下只会被创建一次出来。单例模式有饿汉式单例模式、懒汉式单例模式和双检锁单例模式三种。饿汉式: ... [详细]
  • java堆的内存规整_java内存分配与溢出
    Java程序而言,Java虚拟机有自动内存管理机制,不需要开发人员去手动释放内空间,也不容易出现内存泄漏和溢出的问题,一切看 ... [详细]
  • 一、数据库并发测试的必要性1、与数据库连接的服务程序采用多线程同时开启多个数据库连接;2、与数据库连接的服务程序单线程,但是同时开启多套服务程序 ... [详细]
author-avatar
越野之族_205
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有