boyunzheyue2

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2016年7月4日

摘要: 需要注意的是 及 其中 size_t msg_st并不是消息结构体的大小,而是消息的大小。如代码中定义了结构 则 size_t msg_st指的是 sizeof(MsgNode.sBuf)即不包括结构中消息类型的长度。在接受/发送消息时如果不设置为IPC_NOWAIT则发送时如果消息队列已满则阻塞, 阅读全文
posted @ 2016-07-04 14:37 boyunzheyue2 阅读(162) 评论(0) 推荐(0)

2016年7月1日

摘要: 在阻塞情况下,管道会阻塞直到有内容写入 读取时如果管道为空会等待有内容可以读取 在打开管道的时候可以选择非阻塞方式O_NONBLOCK 如果是非阻塞方式则忽略当前管道状态 命名管道不仅可以在有亲缘关系的进程中进行通信,也可以在无亲缘关系的进程中通信。 阅读全文
posted @ 2016-07-01 11:00 boyunzheyue2 阅读(150) 评论(0) 推荐(0)

摘要: 最近学习了管道 pipe,在这里进行一下总结。 这里贴一段自己的实做代码 pipe作为linux进程通讯中的一种常用手段被广泛使用,函数原型为int pipe(int filedes[2]); 其中filedes中的filedes[0]代表读 filedes[1]代表写。 再不使用fcntl函数限定 阅读全文
posted @ 2016-07-01 09:27 boyunzheyue2 阅读(374) 评论(0) 推荐(0)

2016年6月29日

摘要: 同样是在一个面试中被问及在多线程环境中,如果多个线程公用一个对象,该对象如何安全释放。 想要解答该问题就要先了解智能指针 http://blog.csdn.net/hackbuteer1/article/details/7561235 智能指针(smart pointer)是存储指向动态分配(堆)对 阅读全文
posted @ 2016-06-29 10:43 boyunzheyue2 阅读(1103) 评论(0) 推荐(0)

摘要: 最近正在面试,遇到一个问题,说在多线程情况下实现单例,但是不使用锁的情况下如何实现 执行结果如下 可以看到在调用getInstance函数时,实例就已经完成了初始化,这里有个疑问为什么声明为private的m_instance对象可以在类外进行初始化? 因为C++标准规定,非整型和枚举型静态常量类成 阅读全文
posted @ 2016-06-29 09:25 boyunzheyue2 阅读(150) 评论(0) 推荐(0)