chidaodezhongsheng
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(2)
給我留言
查看公開留言
查看私人留言
隨筆檔案
2012年1月 (1)
2010年10月 (1)
文章檔案
2010年12月 (7)
2010年11月 (6)
2010年10月 (24)
搜索
最新評論
1.?re: Http參數(shù)傳遞時的亂碼過濾器[未登錄]
是是是是是是
--啊啊
2.?re: Servlet配置到Web.xml中
配置好了 它整體的流程是什么啊?
--Tovep
3.?re: JDBC基本操作
期待...
--Tovep
4.?re: 再寫銀行排隊
LZ 寫的不錯 啊!!!
--Tovep
5.?re: 生產(chǎn)消費問題
臭小子 居然FZZT
--Tovep
閱讀排行榜
1.?無題(203)
2.?很久沒更新了,真的太久了(175)
評論排行榜
1.?很久沒更新了,真的太久了(0)
2.?無題(0)
Powered by:
博客園
模板提供:
滬江博客
BlogJava
|
首頁
|
發(fā)新隨筆
|
發(fā)新文章
|
聯(lián)系
|
聚合
|
管理
再寫銀行排隊
這次的銀行排隊我們稍作調(diào)整,調(diào)整就是銀行工作人員辦理業(yè)務的時候,在隊列里依次取出排隊人員,并且保證每個人員只能取出一次,不能被多個窗口取到,這就需要多線程了,每一個窗口就是一個獨立的線程,并且所有窗口去隊列里取排隊人員的時候,涉及到資源共享的問題,要將資源上鎖,也就是使用synchronized關(guān)鍵字,可以保證每一個排隊人員只被取到一次。
下面看看代碼和運行結(jié)果:
服務器:
public
class
QueueServer
{
public
Queue
<
Waiter
>
waiterlist
=
new
LinkedList
<
Waiter
>
();
public
Queue
<
GoldWaiter
>
goldwaiterlist
=
new
LinkedList
<
GoldWaiter
>
();
public
Queue
<
Waiter
>
init()
{
Waiter w
=
null
;
for
(
int
i
=
1
;i
<
50
;i
++
)
{
w
=
new
Waiter();
w.setNumber(i);
w.setFrontnumer(i
-
1
);
waiterlist.offer(w);
}
return
waiterlist;
}
public
Queue
<
GoldWaiter
>
goldinit()
{
GoldWaiter w
=
null
;
for
(
int
i
=
1
;i
<
10
;i
++
)
{
w
=
new
GoldWaiter();
w.setNumber(i);
w.setFrontnumer(i
-
1
);
goldwaiterlist.offer(w);
}
return
goldwaiterlist;
}
}
測試類:
public
class
TestQueue
implements
Runnable
{
QueueServer server
=
new
QueueServer();
Queue
<
Waiter
>
waiterlist
=
server.init();
Queue
<
GoldWaiter
>
goldwaiterlist
=
server.goldinit();
public
static
void
main(String[] args)
{
TestQueue tq
=
new
TestQueue();
Thread t1
=
new
Thread(tq,
"
1號窗口
"
);
Thread t2
=
new
Thread(tq,
"
2號窗口
"
);
Thread t3
=
new
Thread(tq,
"
3號窗口
"
);
t1.start();
t2.start();
t3.start();
}
public
synchronized
void
handBusiness()
{
Waiter w
=
null
;
GoldWaiter gw
=
null
;
if
(waiterlist
!=
null
)
{
gw
=
goldwaiterlist.poll();
if
(gw
!=
null
)
{
System.out.println(
"
尊敬的大爺,您的號碼是
"
+
gw.getNumber()
+
"
請您到
"
+
Thread.currentThread().getName()
+
"
辦理業(yè)務
"
);
}
else
{
w
=
waiterlist.poll();
if
(w
!=
null
)
{
System.out.println(
"
個人業(yè)務用戶,您的號碼是
"
+
w.getNumber()
+
"
請您到
"
+
Thread.currentThread().getName()
+
"
辦理業(yè)務
"
);
}
else
{
System.out.println(
"
現(xiàn)在沒有用戶辦理業(yè)務了,喝杯咖啡吧,哈哈
"
);
}
}
}
}
public
void
run()
{
for
(
int
i
=
0
;i
<
20
;i
++
)
{
handBusiness();
try
{
Thread.sleep(
100
);
}
catch
(InterruptedException e)
{
e.printStackTrace();
}
}
}
}
看看運行結(jié)果:
發(fā)表于 2010-11-07 22:48
遲到的鐘聲
閱讀(143)
評論(1)
編輯
收藏
評論
#
re: 再寫銀行排隊
回復
更多評論
LZ 寫的不錯 啊!!!
Tovep
評論于 2010-11-09 12:55
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發(fā)表評論。
網(wǎng)站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
主站蜘蛛池模板:
亚洲AV无码之日韩精品
|
男女猛烈xx00免费视频试看
|
亚洲AV永久无码区成人网站
|
亚洲AV电影院在线观看
|
亚洲综合久久成人69
|
免费三级毛片电影片
|
亚洲成a∧人片在线观看无码
|
午夜成人无码福利免费视频
|
国产免费一区二区视频
|
成人啪精品视频免费网站
|
久久精品亚洲男人的天堂
|
亚洲一区免费在线观看
|
大妹子影视剧在线观看全集免费
|
精品女同一区二区三区免费站
|
免费a级毛片视频
|
中文字幕亚洲精品资源网
|
羞羞视频免费网站日本
|
亚洲成av人片不卡无码久久
|
四虎影视永久在线精品免费
|
国产亚洲色视频在线
|
久久99毛片免费观看不卡
|
久久久久久久亚洲Av无码
|
国产A∨免费精品视频
|
日韩免费视频播放
|
亚洲最新在线视频
|
久久免费精品视频
|
亚洲成人黄色在线
|
又粗又硬又大又爽免费视频播放
|
五月天婷婷免费视频
|
亚洲av日韩av无码
|
成全视频免费高清
|
国产成人自产拍免费视频
|
亚洲网站在线观看
|
男人进去女人爽免费视频国产
|
亚洲第一福利网站在线观看
|
baoyu122.永久免费视频
|
国产亚洲A∨片在线观看
|
羞羞视频在线观看免费
|
久久精品国产亚洲AV无码娇色
|
成人免费无码大片a毛片
|
av电影在线免费看
|