博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c语言中多线程的基本原理,如何用C语言实现多线程
阅读量:5742 次
发布时间:2019-06-18

本文共 970 字,大约阅读时间需要 3 分钟。

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

Windows操作系统,C语言实现多线程:

#include 

#include 

DWORD APIENTRY ThreadOne ( LPVOID threadArg )

{

printf ( "线程开始啦,参数是:%s\n" , (char *)threadArg );

return 0;

}

int main ( void )

{

HANDLE hThread;  /* 记录线程句柄 */

DWORD ThreadID;  /* 记录线程ID号 */

DWORD waitingResult;  /* 等待线程退出的等待结果 */

DWORD threadExitCode;  /* 记录线程的返回值 */

char * aMessage = "这是线程的参数" ;

/* 创建并启动线程ThreadOne,返回值为线程句柄,赋值给hThread */

hThread = CreateThread ( NULL, 0L, ThreadOne, (LPVOID)aMessage, 0L, &ThreadID );

if ( hThread == NULL )

{

printf ("线程ThreadOne创建失败。错误代码:%lu\n", GetLastError() );

return EXIT_FAILURE ;

}

/* 等待线程句柄为的hThread线程结束 */

waitingResult = WaitForSingleObject ( hThread, INFINITE );

if ( waitingResult == WAIT_FAILED )

{

printf ( "等待线程退出等待失败。错误代码:%lu\n" , GetLastError() ) ;

return EXIT_FAILURE ;

}

if ( GetExitCodeThread ( hThread , &threadExitCode ) )

printf ( "线程的返回值是%lu\n", threadExitCode ) ;

else

printf ( "获取线程的返回值获取失败。错误代码:%lu\n" , GetLastError() ) ;

return EXIT_SUCCESS ;

}

转载地址:http://ycnzx.baihongyu.com/

你可能感兴趣的文章
报错-Type ViewController doesnot conform to protocol
查看>>
Mycat1.6基础用法之--简单实现mysql高可用
查看>>
collections.OrderedDict
查看>>
ubuntu上部署ceph集群
查看>>
JS的构造函数
查看>>
第十七章、LVM
查看>>
github简单使用教程
查看>>
Web前端 个人笔记(未完待续...)
查看>>
java中IO类的各种操作
查看>>
我的友情链接
查看>>
haproxy实现discuz论坛的动静分离和负载均衡
查看>>
总结ccna面试题
查看>>
find命令的实例
查看>>
腾讯微博Android客户端开发 - OAuth1.0认证介绍
查看>>
HTTPS页面打不开的解决方法
查看>>
设计模式之抽象工厂模式
查看>>
MAVEN 属性定义与使用
查看>>
hadoop2.7.2 HA搭建
查看>>
gitosc上传项目
查看>>
Java-UrlRewrite中文官方文档
查看>>