使用C++语言编写多线程程序的速成代码
2014-01-07 11:39
183 查看
使用C++语言编写多线程程序的速成代码
1。首先导入头文件
#include <process.h>
2。声明一个线程运行的函数
unsigned __stdcall run( void* pArguments )
{while (true);
return 0;
}
3.在主函数中声明几个变量,并开启的新线程
int main()
{
HANDLE sThread; //线程句柄
unsigned sthreadID; //线程ID
sThread = (HANDLE)_beginthreadex( NULL, 0, &run, NULL, 0, &sthreadID );
//其中run是前面定义的要执行的线程的函数名。
}
4。线程结束
最好是让线程的函数执行完成以后自己返回0,然后正常结束。
意外终止线程可以在线程体内调用ExitThread(0);
在线程体外TerminateThread(sThread,0); //传入线程句柄
意外终止有时候不能施放资源会导致内存紊乱。。。所以谨慎使用
5。挂起线程
SuspendThread(sThread);
6。恢复线程
ResumeThread(sThread);
1。首先导入头文件
#include <process.h>
2。声明一个线程运行的函数
unsigned __stdcall run( void* pArguments )
{while (true);
return 0;
}
3.在主函数中声明几个变量,并开启的新线程
int main()
{
HANDLE sThread; //线程句柄
unsigned sthreadID; //线程ID
sThread = (HANDLE)_beginthreadex( NULL, 0, &run, NULL, 0, &sthreadID );
//其中run是前面定义的要执行的线程的函数名。
}
4。线程结束
最好是让线程的函数执行完成以后自己返回0,然后正常结束。
意外终止线程可以在线程体内调用ExitThread(0);
在线程体外TerminateThread(sThread,0); //传入线程句柄
意外终止有时候不能施放资源会导致内存紊乱。。。所以谨慎使用
5。挂起线程
SuspendThread(sThread);
6。恢复线程
ResumeThread(sThread);
相关文章推荐
- [编写高质量代码:改善java程序的151个建议]建议80 多线程使用Vector或hashTable
- 编写高质量代码改善C#程序的157个建议——建议151:使用事件访问器替换公开的事件成员变量
- 如何使用Java编写多线程程序
- [编写高质量代码:改善java程序的151个建议]建议58 强烈建议使用UTF-8编码
- [编写高质量代码:改善java程序的151个建议]建议76 集合运算时使用更优雅的方式
- 编写高质量代码改善C#程序的157个建议——建议99:重写时不应使用子类参数
- 编写高质量代码改善C#程序的157个建议——建议105:使用私有构造函数强化单例
- 编写高质量代码改善C#程序的157个建议——建议17:多数情况下使用foreach进行循环遍历
- 编写高质量代码改善C#程序的157个建议——建议118:使用SecureString保存密钥等机密字符串
- [编写高质量代码:改善java程序的151个建议]建议77 使用Shuffle打乱列表
- 编写高质量代码改善C#程序的157个建议——建议81:使用Parallel简化同步状态下Task的使用
- 使用QtConcurrent编写多线程程序
- 使用CXF开发WebService程序的总结(五):基于Map数据类型处理的的客户端和服务端代码的编写
- windows qt 使用c++ posix接口编写多线程程序(真神奇)good
- [C++11 std::thread] 使用C++11 编写 Linux 多线程程序
- spring boot使用thymeleaf模板编写前端程序-文件路径和代码复用