Linux与Windows API对比
|
对象 |
操作 |
Linux API |
Windows API |
|
线程 |
创建 |
pthread_create() |
CreateThread() |
|
退出 |
pthread_exit() |
ThreadExit() |
|
|
等待 |
pthread_join() |
WaitForSingleObject() |
|
|
互斥锁 |
创建 |
pthread_mutex_init() |
CreateMutex() |
|
销毁 |
pthread_mutex_destroy() |
CloseHandle() |
|
|
加锁 |
pthread_mutex_lock() |
WaitForSingleObject() |
|
|
解锁 |
pthread_mutex_unlock() |
ReleaseMutex() |
|
|
事件 |
创建 |
pthread_cond_init() |
CreateEvent() |
|
锁毁 |
pthread_cond_destroy() |
CloseHandle() |
|
|
触发 |
pthread_cond_signal() |
SetEvent() |
|
|
广播 |
pthread_cond_broadcast() |
SetEvent() / ResetEvent() |
|
|
等待 |
pthread_cond_wait() / pthread_cond_timewait() |
SingleObjectAndWait() |
|
|
信号量 |
创建 |
sem_init() |
CreateSemaphore() |
|
获取(P) |
sem_wait() |
WaitForSingleObject() |
|
|
释放(V) |
sem_post() |
ReleaseSemaphore() |
|
|
销毁 |
sem_destroy() |
CloseHandle() |
|
|
临界区 |
创建 |
—— |
InitializeCriticalSection() |
|
加锁 |
—— |
EnterCriticalSection() |
|
|
解锁 |
—— |
LeaveCriticalSection() |
|
|
销毁 |
—— |
DeleteCriticalSection() |
|
|
消息队列 |
创建 |
msgget() |
—— |
|
发送 |
msgsnd() |
—— |
|
|
接收 |
msgrcv() |
—— |
|
|
销毁 |
msgctl() |
—— |
参考:
http://www.ibm.com/developerworks/cn/linux/l-cn-mthreadps/index.html
Linux程序设计[第四版] 人民邮电出版社
Linux与Windows API对比的更多相关文章
- Linux与windows的对比
Linux与windows的对比 声明:下面的内容总结自实验楼的linux教程,特在此说明. Linux与windows一样,是一个操作系统. Linux与Windows的区别 软件与支持 windo ...
- Linux与Windows的设备驱动模型对比
Linux与Windows的设备驱动模型对比 名词缩写: API 应用程序接口(Application Program Interface ) ABI 应用系统二进制接口(Application Bi ...
- Windows 和 Linux 的IPC API对应表
原文出处:http://blog.csdn.net/zhengdy/article/details/5485472 ...
- Linux与Windows中动态链接库的分析与对比
摘要:动态链接库技术实现和设计程序常用的技术,在Windows和Linux系统中都有动态库的概念,采用动态库可以有效的减少程序大小,节省空间,提高效率,增加程序的可扩展性,便于模块化管理.但不同操作系 ...
- Linux和Windows下查看环境变量方法对比
摘自:Linux和Windows下查看环境变量方法对比 一.查看所有环境变量的名称和值 Linux下:export Windows下:set 二.根据名称查该环境变量的值 Linux下:echo $环 ...
- Linux和Windows的遍历目录下所有文件的方法对比
首先两者读取所有文件的方法都是采用迭代的方式,首先用函数A的返回值判断目录下是否有文件,然后返回值合法则在循环中用函数B直到函数B的返回值不合法为止.最后用函数C释放资源. 1.打开目录 #inclu ...
- Linux、Windows 和 Mac 中的换行符对比
原文地址:Linux.Windows 和 Mac 中的换行符对比 博客地址:http://www.moonxy.com 一.前言 经常使用 Window.Linux 等不同操作系统的开发者,在处理文本 ...
- linux目录和Windows目录对比
linux目录和Windows目录对比 我们应该知道 Windows 有一个默认的安装目录专门用来安装软件.Linux 的软件安装目录也应该是有讲究的,遵循这一点,对后期的管理和维护也是有帮助的. / ...
- 分享一实战性开源MVC框架<Linux、Windows跨平台开发so easy>
一.引子 开源地址 https://github.com/564064202/Moon.Mvc 欢迎加入开发 .NET Core微软还在发力,但作为商用还有一段距离,很多开发库尚不能用于.NET ...
随机推荐
- Map/Reduce 工作机制分析 --- 错误处理机制
前言 对于Hadoop集群来说,节点损坏是非常常见的现象. 而Hadoop一个很大的特点就是某个节点的损坏,不会影响到整个分布式任务的运行. 下面就来分析Hadoop平台是如何做到的. 硬件故障 硬件 ...
- HDU 1548 A strange lift (bfs / 最短路)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1548 A strange lift Time Limit: 2000/1000 MS (Java/Ot ...
- 几种循环语句 ,break,continue语句用法
Java有非常灵活的三循环机制.可以使用以下三种循环之一: while 循环 do...while 循环 for 循环while循环是一个控制结构,可以重复的特定任务次数.在执行时,如果布尔表达式的结 ...
- css中的字体及文本相关属性
css中的字体及文本相关属性 1.字体相关属性 字体主要可以设置color.font-family.font-size.font-size-adjust.font-stretch.font-style ...
- crontabs Permission denied
问题 jack@somemachine /data/jack $ crontab -e crontabs/jack: Permission denied 解决办法 sudo chown root:cr ...
- JavaWeb用Jdbc操作MySql数据库(一)
一.添加开发包.在JavaWeb中用jdbc操作数据库,使用方法与java一样,但是在处理开发包的问题上有点差别.JavaWeb不能将mysql-connector-java-5.1.7-bin.ja ...
- QString转换为char* (转)
Qt下面,字符串都用QString,确实给开发者提供了方便,想想VC里面定义的各种变量类型,而且函数参数类型五花八门,经常需要今年新那个类型转换 Qt再使用第三方开源库时,由于库的类型基本上都是标准的 ...
- Apache服务器配置技巧
1.如何设置请求等待时间 在httpd.conf里面设置: TimeOut n 其中n为整数,单位是秒. 设置这个TimeOut适用于三种情况: 2.如何接收一个get请求的总时间 接收一个post和 ...
- Visual SVN Server启动失败0x8007042a错误
今天在程序VisualSVNServer界面中启动服务时,报错如下: VisualSVNServerServer service failed to start:服务已返回特定的服务器错误 ...
- Chronos
https://mesos.github.io/chronos/ https://github.com/mesos/chronos https://github.com/mesos/chronos/t ...