Chinaunix首页 | 论坛 | 博客

9z

  • 博客访问: 35675
  • 博文数量: 6
  • 博客积分: 240
  • 博客等级: 二等列兵
  • 技术积分: 100
  • 用 户 组: 普通用户
  • 注册时间: 2009-09-05 16:14
文章分类

全部博文(6)

文章存档

2011年(1)

2009年(5)

我的朋友

分类: C/C++

2009-11-12 13:54:11

问:很多操作IPC,例如消息队列,共享内存等的时候,常常的key并不是直接写死的,而是用ftok返回的键值作为IPC键值,请问这样做有什么好处吗?直接写死,或者写到配置文件中不是也一样吗?

答:ftok的第一个参数是一个文件的路径名称.一般在应用系统中,使用$HOME或者应用系统的根目录作为它的值.这样产生的key_t就不会与系统中其他的软件和系统的相同了,从而避免造成冲突. (当以文件为第一个参数时,如果文件的大小发生变化,生成的Key也会响应变化,应注意

如果,你使用配制文件,或者写死在程序里面,key_t的值有可能与系统中其他的软件.
ftok的第二个参数是用于你在自己的系统里产生多个IPC的时候,区分它们使用的.

总之,  ftok的首个参数是用于与其他系统相区别的.
      第二个参数是用于本系统的不同的IPC区别使用的.
阅读(4780) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~