博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在c语言中创建两个线程,如何用C语言实现多线程
阅读量:7025 次
发布时间:2019-06-28

本文共 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://musxl.baihongyu.com/

你可能感兴趣的文章
UNIX网络编程书中源代码测试环境搭建 (centos中取时间问题)
查看>>
解决IP地址冲突的问题
查看>>
Linux 磁盘管理
查看>>
Rhel5下的Xmanager配置
查看>>
谈谈WEB开发中的苦大难字符集问题
查看>>
使用paramiko模块复制远程文件到本地
查看>>
Rails practise
查看>>
将JSP页面改写成HTML(二)
查看>>
Log4j 配置使用详解
查看>>
浅谈 iOS 版本号
查看>>
.net core入门之守护进程
查看>>
Scala 高阶函数
查看>>
OSChina 周六乱弹 ——白天写代码,晚上跑滴滴,都是有故事的男同学
查看>>
OSChina 周日乱弹 ——程序员女友爆照!404
查看>>
swift3.0 dispatch_after 延时操作
查看>>
NGUI v301 官网详解 Example 3 - Menu
查看>>
抽象工厂模式——创建型模式
查看>>
网页检测摇一摇
查看>>
2013-9-11
查看>>
使用 Jersey 和 Apache Tomcat 7 构建 JAX-RS 环境
查看>>