歡迎來(lái)到小米的博客
希望能和您交流Java編程的知識(shí)和見解
BlogJava
首頁(yè)
新隨筆
聯(lián)系
聚合
管理
隨筆-57 評(píng)論-202 文章-17 trackbacks-0
從SocketChannel對(duì)象池中獲取的實(shí)例,使用時(shí)應(yīng)注意的問(wèn)題
從對(duì)象池中獲取的實(shí)例,因?yàn)椴⒉磺宄揷hannel是否已經(jīng)設(shè)置成正確的狀態(tài),所以在使用時(shí)最好重新設(shè)置一遍。有以下幾點(diǎn)需要注意:
1.在使用阻塞IO時(shí),需要把該channel設(shè)置成阻塞的,即需要調(diào)用SocketChannel.configureBlocking(true);
2.在使用非阻塞IO時(shí),需要把該channel設(shè)置成非阻塞的,即需要調(diào)用SocketChannel.configureBlocking(false);
3.如果該channel注冊(cè)了selector,那么在返回該實(shí)例到對(duì)象池中,需要把注冊(cè)的selector清除,即需要調(diào)用Selector的close方法。
下面是一段應(yīng)用場(chǎng)景的例子:
//
把命令輸出
channel.configureBlocking(
true
);
PrintWriter writer
=
new
PrintWriter(channel.socket().getOutputStream(),
false
);
writer.write(command.endsWith(
"
\n
"
)
?
command : command
+
"
\n
"
);
writer.flush();
channel.configureBlocking(
false
);
//
創(chuàng)建Selector
Selector selector
=
Selector.open();
//
向Selector注冊(cè)我們需要的READ事件
SelectionKey skey
=
channel.register(selector, SelectionKey.OP_READ);
boolean stop
=
false
;
int
n
=
0
;
int
read
=
0
;
ByteBuffer buffer
=
ByteBuffer.allocate(
1024
);
//
輪詢
while
(
!
stop)
{
//
獲取Selector返回的時(shí)間值
n
=
selector.select();
//
當(dāng)傳回的值大于0事,讀事件發(fā)生了
if
(n
>
0
)
{
//
處理發(fā)生的事件
}
}
selector.close();
posted on 2005-05-25 15:02
小米
閱讀(3201)
評(píng)論(0)
編輯
收藏
所屬分類:
Java
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問(wèn)
管理
相關(guān)文章:
由JComponent生成BufferedImage
如何將BufferedImage實(shí)例保存為BMP文件
關(guān)閉JBuilder2005的Smart MemberInsight功能
用JFreeChart畫柱狀圖的范例
用ChartDirector在JSP中畫統(tǒng)計(jì)圖
用java.util.Timer定時(shí)執(zhí)行任務(wù)
JavaMail的簡(jiǎn)單實(shí)例
如何比較兩個(gè)有可能為null的實(shí)例
從SocketChannel對(duì)象池中獲取的實(shí)例,使用時(shí)應(yīng)注意的問(wèn)題
JDK Dynamic Proxy模式的簡(jiǎn)單范例
小米,生活在深圳,專注于Java,主要從事數(shù)據(jù)庫(kù)和網(wǎng)頁(yè)編程?,F(xiàn)在在學(xué)習(xí)著Hibernate和Spring。喜歡游戲、音樂(lè)和臺(tái)球。聯(lián)系方式:georgehill@21cn.com
<
2005年5月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用鏈接
我的隨筆
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(27)
給我留言
查看公開留言
查看私人留言
隨筆分類
Hibernate(15)
Java(17)
Spring(1)
Struts(5)
其它(5)
數(shù)據(jù)庫(kù)(2)
生活隨筆(12)
隨筆檔案
2006年4月 (1)
2006年3月 (1)
2005年8月 (1)
2005年7月 (11)
2005年6月 (13)
2005年5月 (30)
文章分類
Eclipse(1)
Java(8)
其它(8)
文章檔案
2005年7月 (1)
2005年6月 (13)
2005年5月 (3)
我的朋友們
emu的博客
Java BY
我的鏈接
Java Research
SUN Java技術(shù)中文社區(qū)
拯救程序員王俊
搜索
積分與排名
積分 - 233091
排名 - 247
最新評(píng)論
1.?re: Hibernate的一對(duì)一關(guān)聯(lián)實(shí)例
根據(jù)寫了報(bào)錯(cuò)了是怎么回事
--33
2.?re: 用java.util.Timer定時(shí)執(zhí)行任務(wù)
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--yunp
3.?re: Hibernate的一對(duì)一關(guān)聯(lián)實(shí)例
好樣的
--vds
4.?re: 如何在Struts中實(shí)現(xiàn)分頁(yè)顯示數(shù)據(jù)(1)
PageData中的集合是所有都取出,還是用多少取多少,若是前者,會(huì)拖慢系統(tǒng)的。
--李亞男
5.?re: BMP文件格式
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--見面
閱讀排行榜
1.?用java.util.Timer定時(shí)執(zhí)行任務(wù)(33741)
2.?用JFreeChart畫柱狀圖的范例(10690)
3.?《深入淺出Hibernate》讀書筆記(3)——數(shù)據(jù)緩存(6107)
4.?《深入淺出Hibernate》讀書筆記(8)——Hibernate分頁(yè)(5554)
5.?用ChartDirector在JSP中畫統(tǒng)計(jì)圖(5246)
評(píng)論排行榜
1.?如何在Struts中實(shí)現(xiàn)分頁(yè)顯示數(shù)據(jù)(2)(25)
2.?獻(xiàn)出一份愛心 共同援助重病程序員王俊(22)
3.?Struts的國(guó)際化完整解決方案(11)
4.?2005年6月27日,一個(gè)值得紀(jì)念的日子(9)
5.?《深入淺出Hibernate》讀書筆記(1)——實(shí)體對(duì)象生命周期(9)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 小米
主站蜘蛛池模板:
国产成人亚洲综合一区
|
久久综合亚洲鲁鲁五月天
|
亚洲性色AV日韩在线观看
|
亚洲免费视频播放
|
亚洲韩国在线一卡二卡
|
国产91免费在线观看
|
亚洲不卡中文字幕
|
AV无码免费永久在线观看
|
亚洲国产片在线观看
|
亚洲人成电影网站免费
|
亚洲中文字幕无码av在线
|
久久九九兔免费精品6
|
亚洲女人影院想要爱
|
成人性生交视频免费观看
|
亚洲成a∨人片在无码2023
|
免费看国产一级片
|
国产VA免费精品高清在线
|
久久精品国产亚洲av四虎
|
亚洲大片免费观看
|
精品国产成人亚洲午夜福利
|
四虎在线视频免费观看
|
最新亚洲人成网站在线观看
|
精品国产亚洲男女在线线电影
|
日韩精品无码免费专区午夜不卡
|
久久久久久久亚洲Av无码
|
日本免费网址大全在线观看
|
亚洲日韩国产精品乱-久
|
免费乱理伦在线播放
|
久久99毛片免费观看不卡
|
亚洲另类精品xxxx人妖
|
国产免费看插插插视频
|
成人免费无码H在线观看不卡
|
亚洲综合无码一区二区
|
午夜影视在线免费观看
|
国产免费A∨在线播放
|
久久精品国产亚洲av麻豆色欲
|
日韩免费毛片视频
|
男人进去女人爽免费视频国产
|
亚洲日本va在线观看
|
JLZZJLZZ亚洲乱熟无码
|
我们的2018在线观看免费高清
|