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 ...
随机推荐
- php部分---创建连接数据库类
class DBDA { public $host="localhost"; public $uid="root"; public $pwd="123 ...
- 正向代理与反向代理的区别【Nginx读书笔记】
正向代理的概念 正向代理,也就是传说中的代理,他的工作原理就像一个跳板, 简单的说, 我是一个用户,我访问不了某网站,但是我能访问一个代理服务器 这个代理服务器呢,他能访问那个我不能访问的网站 于是我 ...
- Base64编码解码
一. Base64编码由来 为什么会有Base64编码呢?因为有些网络传送渠道并不支持所有的字节,例如传统的邮件只支持可见字符的传送,像ASCII码的控制字符就不能通过邮件传送.这样用途就受到了很大的 ...
- Java 学习总结(一)
1. 概述 1.1 dos命令行--常见的命令 l dir : 列出当前目录下的文件以及文件夹 l md : 创建目录 l rd : 删除目录 l cd : 进入指 ...
- NetCFSvcUtil.exe and Windows 7
NetCFSvcUtil.exe is the analogous of Svcutil.exe but for devices. You can use it to generate a WCF c ...
- error while loading shared libraries:错误的原因和解决方法
原因有两个: 1.操作系统没有改共享库 2.安装了该共享库,但是执行外部程序调用该共享库的时候,程序按照默认路径(/usr/lib./lib)找不到该共享库文件 解决方法: ubuntu系统的共享库一 ...
- MSSQL 判断临时表是否存在
方法一: if exists (select * from tempdb.dbo.sysobjects where id = object_id(N'tempdb..#tempcitys') and ...
- [工具开发] 一信通 Web 短信发送客户端
一.简介 为了协助公司运营部对几家短信平台进行测试,我根据各自的接口文档编写了几个简单的短信发送客户端: 下面是一信通 Web 短信发送客户端,使用 HTTP GET 方法. 二.效果图 1. 首页 ...
- 黄聪:如何关闭phpstorm的typo拼写检查
文件-设置-编辑器-inspections-spelling-typo
- IO 输入流操作
//get.h #ifndef GET_H #define GET_H #include <iostream> std::istream& get(std::istream& ...