万捷博客

万捷博客
一个知识汇聚的地方
首页 » c++ » C++多线程操作的两种方法thread和CreateThread

C++多线程操作的两种方法thread和CreateThread

本文介绍了两种在C++中使用多线程的方法,第一种方法比较简单,适合常规使用。第二种方法适合更复杂的情况下使用。

 

#include <thread>
#include <iostream>
#include <windows.h>
using namespace std;

//方法一线程调用函数
void* thread1 (int a){
cout << "方法一线程输出的内容:" << a<< endl;
}

//方法二线程调用函数
DWORD WINAPI thread2 (PVOID pParam){

    cout << "方法二线程输出的内容:" << (char*)pParam<< endl;

    return 0;
}


int main()
{
    //第一种方法

    thread a (thread1,6);//创建线程
    a.join();//等待线程执行完毕


    //第二种方法
    HANDLE h1;
    char data[100] = "Hello world!";
	h1=CreateThread(NULL,0,thread2,data,0,NULL);//创建线程
    ResumeThread(h1);//启动线程
    WaitForSingleObject(h1,INFINITE);//等待线程结束 ,参数2位等待时间毫秒,INFINITE为无限等待
    CloseHandle(h1);//关闭线程句柄

    return 0;
}

文章如无特别注明均为原创! 作者: admin, 转载或复制请以 超链接形式 并注明出处 万捷博客
原文地址《 C++多线程操作的两种方法thread和CreateThread》发布于2019-6-17

打赏作者
提示信息

SQL语句执行错误:SELECT gid,title FROM emlog_blog WHERE hide='n' AND type='blog' AND gid!=M AND sortid=M ORDER BY rand() LIMIT 0,6
Unknown column 'M' in 'where clause'

«点击返回