当前位置:  技术问答>操作系统 iis7站长之家

ftok到底有什么好处?

    来源: 互联网  发布时间:2016-08-14

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

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

我自己写了几行测试代码,发现一样也都可以做大,请问为什么还是都用 ftok呢?请不吝赐教。

|

ftok的第一个参数是一个文件的路径名称.一般在应用系统中,使用$HOME或者应用系统的根目录作为它的值.这样产生的key_t就不会与系统中其他的软件和系统的相同了,从而避免造成冲突.

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

总之,  ftok的首个参数是用于与其他系统相区别的.
       第二个参数是用于本系统的不同的IPC区别使用的.


|

ftok没有什么好处,可是不用的话,可能会又很大的坏处。

|
ftok应用范围:在IPC通信及消息记者中使用

解析:

系统建立IPC通讯(如消息队列、共享内存时)必须指定一个ID值。通常情况下,该id值通过ftok函数得到。

在一般的UNIX实现中,是将文件的索引节点号取出,前面加上子序号得到key_t的返回值。

如指定文件的索引节点号为65538,换算成16进制为0x010002,而你指定的ID值为38,换算成16进制为0x26,则最后的key_t返回值为0x26010002。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 关于ftok的问题,谢谢
  • 关于ftok函数
  • AIX上ftok函数的问题
  • ftok()问题
  • 关于ftok的问题
  • 用ftok获取的内核对象不需要释放吗?
  • 关于用ftok生成key的问题
  • 关于ftok()提示No such file or directory的问题???
  • 谁能解释一下key_t ftok(char*, char)是做什么用的啊?请看例子:


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3