1、线程需要用到<widnows.h>

2、利用句柄创建并执行线程:

HANDLE hThread = CreateThread(NULL, 0, Fun, &tp, 0, NULL);
CloseHandle(hThread);

注意:线程的函数必须是以DWORD WINAPI functionName(LPVOID lpParamter)的形式声明

3、完整代码如下:

#include <iostream>
#include <windows.h>
using namespace std;
int i=0;
struct threadParams
{char* name;int age;
};
DWORD WINAPI Fun(LPVOID lpParamter)
{threadParams *sp = (threadParams*)lpParamter;cout<<"Have been started: "<<i++<<" secend(s)!\n";cout<<"name = "<<sp->name<<endl;cout<<"age = "<<sp->age<<endl;return 0;
}
/*
HANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes,      // pointer to security attributesDWORD dwStackSize,                  // initial thread stack sizeLPTHREAD_START_ROUTINE lpStartAddress,       // pointer to thread functionLPVOID lpParameter,                   // argument for new threadDWORD dwCreationFlags,                // creation flagsLPDWORD lpThreadId                  // pointer to receive thread ID
);第一个参数是指向SECURITY_ATTRIBUTES型态的结构的指针。在Windows 98中忽略该参数。在Windows NT中,它被设为NULL。
第二个参数是用于新线程的初始堆栈大小,默认值为0。在任何情况下,Windows根据需要动态延长堆栈的大小。
第三个参数是指向线程函数的指标。函数名称没有限制,但是必须以下列形式声明:
DWORD WINAPI ThreadProc (PVOID pParam) ;
第四个参数为传递给ThreadProc的参数。这样主线程和从属线程就可以共享数据。
第五个参数通常为0,但当建立的线程不马上执行时为旗标CREATE_SUSPENDED。线程将暂停直到呼叫ResumeThread来恢复线程的执行为止。
第六个参数是一个指标,指向接受执行绪ID值的变量。*/
DWORD WINAPI inputAPI(LPVOID lp){char* s=NULL;cin>>s;if(s=="s"){exit(0);}
}
int main()
{threadParams tp;tp.name = "tom";tp.age = 20;char* s  = NULL;while(TRUE){if(i==20){cout<<"You have successed!Congratunations!"<<endl;break;}HANDLE hThread = CreateThread(NULL, 0, Fun, &tp, 0, NULL);CloseHandle(hThread);if(i==18){cout<<"Closing the thread!"<<endl;TerminateThread(hThread,0);//close a threadsystem("pause");}HANDLE INThread = CreateThread(NULL,0,inputAPI,NULL,0,NULL);CloseHandle(INThread);Sleep(1000);}//Sleep(1);//while(1) { cout<<"main display!\n";  Sleep(2000);}return 1;
}

转载于:https://www.cnblogs.com/yuan951/p/4780485.html

CPlus的简单线程的制作相关推荐

  1. c#调用windows api C#简单游戏外挂制作(以Warcraft Ⅲ为例)

    C#简单游戏外挂制作(以Warcraft Ⅲ为例) 网上有很多外挂制作的教程,大多是讲针对大型网络游戏的,主要包含一些抓包.反汇编.C++的知识综合.事实也如此,常见的外挂都是使用VC++写的,从来没 ...

  2. python tkinter库、添加gui界面_使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二)...

    使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二),创建一个,界面,布局,文件,路径 使用Python中tkinter库简单gui界面制作及打包成exe的操作方法(二) ...

  3. Linux下简单线程池的实现

    线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源.在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收.所以 ...

  4. C++多线程快速入门(五)简单线程池设计

    目录 设计思路 主线程运行逻辑 task以及taskpool设计 详细流程讲解 完整代码 打印结果 往期回顾 设计思路 线程池实际上就是一组线程,当我们需要异步执行一些任务时,经常要通过OS频繁创建和 ...

  5. Linux多线程实践(9) --简单线程池的设计与实现

    线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源.在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收.所以 ...

  6. web网页设计实例作业 ——电影泰坦尼克号(4页) HTML+CSS+JavaScript 学生HTML个人网页作业作品下载 个人网页设计制作 大学生个人网站作业模板 简单个人网页制作

    HTML5期末大作业:电影网站设计--电影泰坦尼克号(4页) HTML+CSS+JavaScript 学生HTML个人网页作业作品下载 个人网页设计制作 大学生个人网站作业模板 简单个人网页制作 文章 ...

  7. Flash cs3简单的动画制作

    [size=medium][color=green][b]Flash cs3简单的动画制作 请参考如下 https://jingyan.baidu.com/article/e52e3615454de8 ...

  8. HTML+CSS静态页面游戏网站设计——腾讯游戏(页)学生HTML个人网页作业作品下载 个人网页设计制作 大学生个人网站作业模板 简单个人网页制作

    HTML5期末大作业:游戏网站设计--腾讯游戏(页)学生HTML个人网页作业作品下载 个人网页设计制作 大学生个人网站作业模板 简单个人网页制作 常见网页设计作业题材有 个人. 美食. 公司. 学校. ...

  9. HTML简单表格的制作

    每日一分享 HTML简单表格的制作 代码: 表格 此处编写设计编码 星期 星期一 星期二 星期三 星期四 星期五 星期六 星期日 上午8:00-12:00 星期一 星期二 星期三 星期四 星期五 星期 ...

最新文章

  1. 搭建私有Git服务器
  2. 新课标下计算机教学,浅析新课程标准下小学信息技术教学
  3. python编程*三角形图形创意图片_python循环输出三角形图案的例子
  4. Java编程在线学习靠谱吗?能学会吗?
  5. firefox 3.0 在 windows 下的编译
  6. 苹果小圆点怎么弄出来_原来苹果手机轻点2下屏幕就能截图,以前还不知道,太方便了...
  7. c++ 读写锁_一篇文章弄懂MySQL锁机制
  8. WPF学习:3.Border Brush
  9. 经典排序算法(十四)--梳排序Comb Sort
  10. 有什么软件方便画er图_er图绘制工具|er图绘制工具(powerdesigner) v16.5 免费版 - 软件下载 - 绿茶软件园|33LC.com...
  11. keil uvision4 汉化破解版v4.12
  12. Java线程状态RUNNABLE详解
  13. sql数据库可以创建同义词_如何使用同义词简化SQL Server数据库对象的使用
  14. c语言编程求百位和个位的差,对任意一个键盘输入的3位整数,求出它的个位、十位和百位。 一道c语言题目?...
  15. 解密:Gmail移动客户端自动邮件回复技术
  16. localtime()
  17. 解决“事件ID(487)的描述(在资源(Zend Optimizer)中)无法找到”问题
  18. 【win10的anaconda3搭建theano环境】超详细必成功全套教程
  19. 三、C++反作弊对抗实战 (实战篇 —— 3.如何获取游戏中角色人物角色的名称坐标、血量、武器信息(非CE扫描))
  20. 用于(海康、大华等)录像机的WPF视频播放控件

热门文章

  1. python用编程软件_Python编程工具pycharm的使用
  2. install python-pip_yum install python-pip:没有包python-pip可用
  3. 从 “香农熵” 到 “告警降噪” ,如何提升告警精度?
  4. 用 Arthas 神器来诊断 HBase 异常进程
  5. 为什么 K8s 在阿里能成功?| 问底中国 IT 技术演进
  6. zabbix如何监控ip地址_Zabbix主动模式监控动态IP服务器
  7. python自动化测试框架pytest.pdf_Python 自动化测试框架 unittest 和 pytest 对比
  8. Ubuntu16.04 ROS 深度学习_传智播客 智能机器人软件开发 学习路线图出炉!首发优惠!!...
  9. 胃癌2019csco指南_领读指南沈琳:2019CSCO胃癌指南重要更新
  10. 【直播课】6小时教你掌握轻量级网络,在安卓部署第一个深度学习模型