作者PsMonkey (痞子军团团长)
看板java
标题Re: [问题]JAVA有类似C的shared memory的功能吗
时间Fri Nov 17 13:15:24 2006
对一些高级领域的东西不熟
也不敢保证那些跟你要的东西有关 Orz (JMS?)
不过,下面是针对实做部份的回答?
※ 引述《Tessa (是我不够好吗??)》之铭言:
: 程式执行环境: linux
: 在socket网路程式中,
: 一般C的做法是clinet连到server後 ,会fork一个prosecc处理该client input的讯息,
: 遇到两个process彼此要相互存取彼此的资讯时 ,
: 在C程式中有shared memory这种功能 ,
: 可让目前连到server上的数个client彼此传送一些讯息或是资料,
: 不知道JAVA有没有类似shared memory的功能可以做到呢?
[广告语气] 你可以不用 process 的 [/广告语气]
改成用 thread 去处理一个新的 client 就好了
(一般的书都是这样子教的阿....)
这样子你可以完全在自己的程式内部维护所有的状态
而下面的问题也不会是问题了(nio 跟 io 处理方法乾有差??)
: 另外想请问 , 如果不用socket和serversocket的做法,
: 而用JAVA NIO 的SocketChannel和ServerSocketChannel的方式,
: server端要如何知道现在连上来的client有哪些呢?
: 我想利用回圈的方式,对所有连上来的client做广播讯息的动作,
: 或是用回圈找出某一特定的client,并用SocketChannel.write传送资料,
: 我是用selector监听client端的连线情形,
: 目前server和client端连线已经完成了, echo给client也没问题.
: 不过我希望把echo 改成广播给所有连线的client,
: 不知道大家看的懂我的问题吗? Thx.
--
侃侃长论鲜窒碍 网站:
http://www.psmonkey.idv.tw
众目睽睽无心颤 个人版:telnet://legend.twbbs.org
茕居少聊常人事
杀头容易告白难 欢迎参观 Java 版(@ptt.cc) \囧/
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.199.201