| 无双 回复于:2003-08-08 21:55:41
|
消息队列还没有使用过
因为没有消息要共享
所以最多只用到信号量
|
| blogliou 回复于:2003-08-09 10:01:49
|
欢迎大家批评指正!
|
| threehair 回复于:2003-08-09 10:59:45
|
消息队列(Message Queue)
的确在实际应用系统开发中,消息队列使用得最多。由于它是先进先出的,我觉得使用它的要点是如何避免消息队列中的消息阻塞。不让那种无法处理的消息影响其余的消息处理。
共享内存(Shared Memory)、
我觉得比较适合大型软件。把一些所有应有都需要的而且基本上只读不写的固定信息写入共享内存。毕竟它的内存开销比较大。而且要注意内存的刷新。因为难保固定信息不发生变化。
|
| 无双 回复于:2003-08-09 11:10:48
|
我觉得消息队列是需要同步时同时共享一些内容
这些内容不是很大
这时使用
共享内存则是需要共享的东西很大才使用的
好久没有看看IPC了 我想它们应该还有其它方面的区别和使用场合
|
| blogliou 回复于:2003-08-14 15:19:00
|
大家对同步和异步有些什么看法?
|
| 无双 回复于:2003-08-14 15:53:36
|
该使用的时候就使用
其它没有什么感觉
|
| 无双 回复于:2003-08-14 15:55:41
|
一般来说如果程序代码较小那写成线程形式
性能会提高
因为线程IPC比进程开销少 并且有其它IPC操作 如条件变量(这个我觉得比较有用 使用信号只能有SIGUSR1 和SIGUSR2 不够用)
还有就是尽量保证并发
同步的话会降低系统性能
|
| jobman 回复于:2003-08-17 20:08:21
|
[code:1:e8c242ff75] 消息队列(Message Queue)
的确在实际应用系统开发中,消息队列使用得最多。由于它是先进先出的,我觉得使用它的要点是如何避免消息队列中的消息阻塞。不让那种无法处理的消息影响其余的消息处理。
共享内存(Shared Memory)、
我觉得比较适合大型软件。把一些所有应有都需要的而且基本上只读不写的固定信息写入共享内存。毕竟它的内存开销比较大。而且要注意内存的刷新。因为难保固定信息不发生变化。
[/code:1:e8c242ff75]
这段描述不理解:
1。哪里规定消息队列是先进先出的 ?由此而来的阻塞有何谈???
2。在内存中共享数据和各进程独立保留数据,那个开销大???难保
不发生变化???什么意思???
|
| 无双 回复于:2003-08-17 20:17:00
|
可以看看消息队列那几个函数的man
msgget 等
这里是一篇文章
http://www.fanqiang.com/a4/b8/20010706/180800821.html
2
共享内存就是一块内存可以同时被几个进程使用
这在进程间想共享大数据时很有用
如果不使用共享内存
每个进程都无法访问到其它进程内数据
根据这个来理解吧
|
| jobman 回复于:2003-08-17 22:09:55
|
莫名其妙,跟这个有关系吗????
|
| 无双 回复于:2003-08-17 23:07:52
|
消息队列就是先进先出啊
你可以指定它的参数指定
另外也是阻塞的
这点有疑问吗
|
| 一无所有 回复于:2003-08-18 17:07:31
|
楼主讨论的是:软件架构设计中的同步与异步问题
不要偏离题目了。可惜这里没有贴图所以效果差了很多。
|