作者p52189 (皮爺)
看板java
標題[問題] 如何實作
時間Wed Dec 7 08:35:29 2011
大家好
我寫了一個main方法,它會叫用多條Thread去做socket連線的動作
我希望這支程式能有個群播的功能,一人發話大家都看得到
想法是,所有Thread共用一個地址,像是把要交換的東西寫在公佈欄上那樣
所以這個公佈欄應該會在main方法所在的class裡頭
但是問題來了
我要怎麼通知其他Thread,公佈欄更新了呢?
我有想過寫個timer之類的東西每幾秒刷新一次
不過馬上就覺得這個解法實在是太鳥了囧
請問該如何實作呢?
或是整個結構打掉重寫也沒關係@@
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.42.239.43
1F:推 TaiwanXDman:我之前寫也是開一個Thread無限迴圈刷新 = = 12/07 08:45
2F:推 Yshuan:我幾年前google到 是用個queue 一個轉發的thread去handle 12/07 10:51
3F:→ p52189:XD 我試試看 12/07 16:35
想問一下
我看大部分的socket使用範例
都是傳完1次就flush然後關閉連線
因為覺得每次都要重新建立連線很麻煩
假設每一個客戶端都會使用蠻長一段時間
可以一直擺著不關嗎?
這樣很吃資源嗎@@?
4F:推 aleelyle:因為那只是"socket使用範例" 12/07 22:44
5F:→ p52189:囧 原來是我想太多了.. 12/07 22:53
6F:推 SHANGOYANYI:通知者模式? 12/07 23:28
這個!!
http://ppt.cc/1~uJ
真是太好了!!感謝你們
※ 編輯: p52189 來自: 114.42.239.43 (12/08 01:44)
7F:推 Zennstrom:以前作業是用RMI來寫 12/08 10:03