会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
cfans1993
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
6
7
下一页
2016年8月21日
互斥锁和条件变量
摘要: 作用 互斥锁用于确保关键资源在修改时只有一个操作者 条件变量类似银行的叫号,协调各个操作者的操作顺序.当前一个操作者操作完成时,叫正在等待的下一个操作者前来操作. 在不引入条件变量之前,互斥锁会使其它线程处于空等状态,不断进行锁状态的检查.条件变量引入后,使相关的其它线程处于睡眠状态,当前操作者完成
阅读全文
posted @ 2016-08-21 22:03 cfans1993
阅读(151)
评论(0)
推荐(0)
2016年8月19日
System V消息队列
摘要: 消息的基本属性 System V的消息属性包含在一个msqid_ds的结构中 消息格式: 由一个结构组成,第一个long参数类型表示消息类型(怎么解读消息由用户自己定义与系统无关), 且其值必须大于0; 第二个为消息内容, 其长度和数据类型可自定义; 除第一个结构成员固定外, 其它成员的数量也可以自
阅读全文
posted @ 2016-08-19 22:48 cfans1993
阅读(196)
评论(0)
推荐(0)
2016年8月9日
命令行参数的处理函数getopt
摘要: 命令参数 在linux下, shell命令的参数分两种情况: a.参数需要附加信息, 如"wget http://www.abc.com/1.zip o 1.zip" b.参数不需要附加信息, 如"ls l" 有点像英语中的及物动词和不及物动词 getopt getopt前两个参数就是main函数里
阅读全文
posted @ 2016-08-09 16:24 cfans1993
阅读(218)
评论(0)
推荐(0)
2016年8月7日
posix 消息队列
摘要: 注意 在涉及到posix消息的函数时, gcc 编译时要加 lrt参数, 如 gcc lrt unpipc.c mqpack.c send.c o send gcc lrt unpipc.c mqpack.c receive.c o receive posix消息的name必须以/开头, 例 ./s
阅读全文
posted @ 2016-08-07 19:59 cfans1993
阅读(186)
评论(0)
推荐(0)
2016年8月6日
不定参数
摘要: 相关函数及类型 注意: 如果要遍历所有参数, 不能用va_arg返回值作为判断依据, 需自己显示或隐示(printf中用fmt里的%作为判断依据)传入一个表示数量的参数 例子 例1.求多个数的和 注:__VA_APRGS__是系统宏,作用是将前面的三个冒号的内容原封不动的复制过来 我们自己定义的第一
阅读全文
posted @ 2016-08-06 19:23 cfans1993
阅读(139)
评论(0)
推荐(0)
2016年8月3日
模拟消息
摘要: 简介 用write/read来简单模拟消息, 没有添加信号控制, 同时读取消息后也没有清除缓冲区 unpipc.h在另一篇中 mesg.h mesg.c 简单例子
阅读全文
posted @ 2016-08-03 22:18 cfans1993
阅读(207)
评论(0)
推荐(0)
unpipc.h&unpipc.c
摘要: unpipc.h unpipc.c c include "unpipc.h" void err_quit(char fmt,...){ int errno_save=errno; va_list va; va_start(va,fmt); vfprintf(stderr,fmt,va); if(er
阅读全文
posted @ 2016-08-03 22:17 cfans1993
阅读(382)
评论(0)
推荐(0)
2016年8月2日
管道和FIFO
摘要: pipe 子进程从终端读取一个文件名, 通过管道将文件名传递给父进程 父进程收到文件名后, 读取文件内容并通过管道传递给子进程 子进程接收到文件内容并输出到终端 popen/pclose popen的打开属性为读或写 写时表示向子进程传递命令, 读时表示从子进程读取命令的执行结果 FIFO 在管道的
阅读全文
posted @ 2016-08-02 18:18 cfans1993
阅读(196)
评论(0)
推荐(0)
2016年7月24日
存储映射IO
摘要: mmap 将文件映射到内存, 对这块内存的修改会自动同步到相应的文件中 例子:用mmap将文件映射到内存, 然后用puts打印出来 c include include include include include int main(int argc, char argv[]){ int fdin;
阅读全文
posted @ 2016-07-24 20:36 cfans1993
阅读(169)
评论(0)
推荐(0)
IO多路转接select和poll
摘要: select IO多路复用的设置方法与信号的屏蔽有点相似: 信号屏蔽需要先设定一个信号集, 初始化信号集, 添加需要屏蔽的信号, 然后用sigprocmask设置 IO多路转接需要先设定一个文件描述符集, 初始化描述符集, 添加感兴趣的描述符, 然后用select进行轮询检测哪些描述符已经可用 描述
阅读全文
posted @ 2016-07-24 18:32 cfans1993
阅读(175)
评论(0)
推荐(0)
上一页
1
2
3
4
5
6
7
下一页
公告