- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
--(完美WORD文档DOC格式,可在线免费浏览全文和下载)值得下载!
一个很简单的多线程程序,主要用于了解临界区的使用
#include #include #include
#pragma comment(lib,libcmt.lib)
const int NLOOP = 100;
int counter = 0;
void doit(void*);
CRITICAL_SECTION beswap ;
int main(){
?HANDLE pnt[2];
?InitializeCriticalSection(beswap);
?pnt[0] = (HANDLE)_beginthread(doit,0,NULL);?pnt[1] = (HANDLE)_beginthread(doit,0,NULL);
?WaitForMultipleObjects( 2, pnt, TRUE, 1000L);
?DeleteCriticalSection(beswap);??return 0;}
void doit(void*){?printf(go...\\n);
?int i, val = 0;
?for(i = 0; i NLOOP; ++i)?{??EnterCriticalSection(beswap);
??val = counter;??printf(%d\\n,val+1);?counter = val + 1;
??LeaveCriticalSection(beswap);?}
?printf(end...\\n);
?return ;}
目录介绍1)Linux程序设计入门--基础知识? 2)Linux程序设计入门--进程介绍? 3)Linux程序设计入门--文件操作? 4)Linux程序设计入门--时间概念? 5)Linux程序设计入门--信号处理? 6)Linux程序设计入门--消息管理? 7)Linux程序设计入门--线程操作? 848)Linux程序设计入门--网络编程? 9)Linux下C开发工具介绍具体内容Linux程序设计入门--基础知识
Linux下C语言编程基础知识 前言: 这篇文章介绍在LINUX下进行C语言编程所需要的基础知识.在这篇文章当中,我们将 会学到以下内容: 源程序编译 Makefile的编写 程序库的链接 程序的调试 头文件和系统求助 ---------------------------------------------------------------------------- ---- 1.源程序的编译 在Linux下面,如果要编译一个C语言源程序,我们要使用GNU的gcc编译器.?下面我们 以一个实例来说明如何使用gcc编译器. 假设我们有下面一个非常简单的源程序(hello.c):
int?main(int?argc,char?**argv) { printf(Hello?Linux\n); } 要编译这个程序,我们只要在命令行下执行: gcc?-o?hello?hello.c gcc?编译器就会为我们生成一个hello的可执行文件.执行./hello就可以看到程序的输出 结果了.命令行中?gcc表示我们是用gcc来编译我们的源程序,-o?选项表示我们要求编译器给我们输出的可执行文件名为hello?而hello.c是我们的源程序文件. gcc编译器有许多选项,一般来说我们只要知道其中的几个就够了.?-o选项我们已经知道 了,表示我们要求输出的可执行文件名.?-c选项表示我们只要求编译器输出目标代码,而不必要输出可执行文件.?-g选项表示我们要求编译器在编译的时候提供我们以后对程序进行调试的信息. 知道了这三个选项,我们就可以编译我们自己所写的简单的源程序了,如果你想要知道更 多的选项,可以查看gcc的帮助文档,那里有着许多对其它选项的详细说明. 2.Makefile的编写 假设我们有下面这样的一个程序,源代码如下: /*?main.c?*/ #include?mytool1.h #include?mytool2.h int?main(int?argc,char?**argv) { mytool1_print(hello); mytool2_print(hello); } /*?mytool1.h?*/ #ifndef?_MYTOOL_1_H #define?_MYTOOL_1_H void?mytool1_print(char?*print_str); #endif /*?mytool1.c?*/ #include?mytool1.h void?mytool1_print(char?*print_str) {
您可能关注的文档
- 试论环境污染侵权责任构成及其要件.doc
- 试论家园共育在幼儿发展中的重要作用.doc
- 浅析检察机关在参与社会管理创新中重要作用.doc
- 试论建构主义与高中英语多媒体阅读及教学.doc
- 浅析建设全生命周期造价管理与对策.doc
- 浅析江海区物流业是如何科学发展.doc
- 试论教学效率研究意义.doc
- 试论课题制项目及过程管理.doc
- 浅析教师在幼儿棋类的教学活动中的实施策略与指导.doc
- 浅析教师在运用Office存在的问题.doc
- 2025年演出经纪人演出数据跨境流动法律问题专题试卷及解析.pdf
- 2025年信息系统安全专家物联网安全日志分析专题试卷及解析.pdf
- 2025年信息系统安全专家云环境持续安全监控专题试卷及解析.pdf
- 2025年信息系统安全专家ISMS内部审核流程与技巧专题试卷及解析.pdf
- 2025年演出经纪人艺人定位与数据化运营策略专题试卷及解析.pdf
- 2025年演出经纪人商务谈判中的僵局处理与冲突化解专题试卷及解析.pdf
- 2025年演出经纪人国际演出合同纠纷解决机制专题试卷及解析.pdf
- 2025年注册项目管理师蒙特卡洛模拟在敏捷项目迭代周期估算中的应用专题试卷及解析.pdf
- 2025年AWS认证子网与AWSSimSpaceWeaver仿真网络专题试卷及解析.pdf
- 2025年AWS认证SQS与EMR集群任务调度专题试卷及解析.pdf
最近下载
- VMMORE微秒控制ISD300-GSD300-MSD300系220V伺服驱动器用户手册V2.3.pdf
- 颈动脉灌注机制济南脑科医院课件.pptx VIP
- 暖通空调的设计手册.pdf VIP
- 《教育心理学》课件——第七章 学习策略.pptx VIP
- 2025年毒品预防教育试题及答案.docx VIP
- 暖通空调毕业设计.doc VIP
- 西方音乐史(上)(中央音乐学院) 中国大学MOOC 慕课 章节测验答案.pdf VIP
- 颈动脉灌注机制.pptx VIP
- 2025年毒品预防教育知识竞赛试题及答案.docx VIP
- CHINSC深川S160A变频器参数设置调试故障代码资料V1.2-2023.pdf
原创力文档


文档评论(0)