[ThinkingDog]是一個積極向上、樂觀、熱心的人。
沉思的狗の博客
[ThinkingDog]歡迎您的光臨,請多多指教!
線程通信--拷貝文件(仿此可以做網絡間的數據通訊)
import
java.io.File;
import
java.io.FileInputStream;
import
java.io.FileOutputStream;
public
class
ThreadCommitTest
{
public
static
void
main(String[] args)
throws
Exception
{
(
new
ReadWriteThread(
true
)).start();
(
new
ReadWriteThread(
false
)).start();
}
static
class
ReadWriteThread
extends
Thread
{
private
static
String inFileName_
=
"
f:\\Fetion2006Setup.zip
"
;
private
static
String outFileName_
=
"
d:\\Fetion2006Setup.zip
"
;
private
static
Boolean lock_
=
new
Boolean(
false
);
public
static
int
LEN_PERCENT
=
1000000
;
private
boolean
isRead_;
private
FileOutputStream writer_;
private
FileInputStream reader;
private
int
nowlen;
private
long
len;
private
static
byte
[] value_;
private
static
boolean
isOver_
=
false
;
public
ReadWriteThread(
boolean
isRead)
throws
Exception
{
isRead_
=
isRead;
if
(isRead)
{
reader
=
new
FileInputStream(inFileName_);
nowlen
=
0
;
len
=
(
new
File(inFileName_)).length();
}
else
{
writer_
=
new
FileOutputStream(outFileName_);
}
}
public
void
run()
{
while
(
true
)
{
if
(isOver_)
break
;
try
{
synchronized
(lock_)
{
if
(isRead_
&&
value_
==
null
)
{
int
charLen
=
LEN_PERCENT;
if
(nowlen
+
LEN_PERCENT
>
len)
{
charLen
=
(
int
)(len
-
nowlen);
}
nowlen
+=
charLen;
if
(charLen
<=
0
)
{
isOver_
=
true
;
reader.close();
}
if
(
!
isOver_)
{
value_
=
new
byte
[charLen];
reader.read(value_);
}
}
else
if
(
!
isRead_
&&
value_
!=
null
)
{
if
(isOver_)
{
writer_.flush();
writer_.close();
break
;
}
else
{
writer_.write(value_);
writer_.flush();
value_
=
null
;
}
}
lock_.notifyAll();
}
}
catch
(Exception e)
{
System.out.println(
"
-------
"
+
e
+
"
-------
"
);
}
}
System.out.println((isRead_
?
"
Reader
"
:
"
Writer
"
)
+
"
Over
"
);
}
}
}
發表于 2007-05-08 16:40
沉思的狗
閱讀(263)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
<
2007年5月
>
日
一
二
三
四
五
六
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
5
6
7
8
9
導航
BlogJava
首頁
發新隨筆
發新文章
聯系
聚合
管理
統計
隨筆: 115
文章: 1
評論: 86
引用: 0
常用鏈接
我的隨筆
我的文章
我的評論
我的參與
最新評論
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆檔案
(115)
2015年1月 (1)
2011年5月 (12)
2011年4月 (2)
2010年9月 (2)
2010年8月 (4)
2009年9月 (1)
2009年6月 (1)
2009年3月 (1)
2008年6月 (1)
2008年1月 (2)
2007年7月 (2)
2007年6月 (2)
2007年5月 (4)
2007年4月 (1)
2007年1月 (1)
2006年12月 (1)
2006年11月 (2)
2006年10月 (2)
2006年9月 (3)
2006年8月 (6)
2006年7月 (1)
2006年6月 (2)
2006年5月 (10)
2006年4月 (50)
2006年3月 (1)
網址
http://blog.csdn.net/Unagain
v_JULY_v
搜索
積分與排名
積分 - 210874
排名 - 266
最新評論
1.?re: 使用Policy文件來設置Java的安全策略[未登錄]
ss
--啊啊
2.?re: Jni中C++和Java的參數傳遞
老大,Long 是J啊,不是L啊,可害苦我了,趕緊改回來吧;
--cnhua5
3.?re: Jni中C++和Java的參數傳遞
樓主,在jni里返回String和C++里獲取的為什么不一樣,比如在java里看到的值是57891234,在C++里顯示的是5789@,這是為什么啊?
--chr
4.?re: 螺旋數字與坐標
對我的項目很有幫助。
謝謝
--cs221313
5.?re: Jni中C++和Java的參數傳遞
long的符號表寫錯了,作為初學者亞歷山大啊
--hhhhhh
閱讀排行榜
1.?Jni中C++和Java的參數傳遞 (63525)
2.?本地計算機上的 MSSQLSERVER 服務啟動后又停止了。一些服務自動停止,如果它們沒有什么可做的,例如“性能日志和警報”服務。[用批處理解決](22461)
3.?使用Policy文件來設置Java的安全策略(10508)
4.?一個簡單的十六進制計算器(出自Win程序設計)(8747)
5.?VC++6.0 全部默認快捷鍵(6213)
評論排行榜
1.?Upload Server (HTTP 上傳服務JAVA程序) 速度極快(11)
2.?Jni中C++和Java的參數傳遞 (10)
3.?垃圾軟件反刪除批處理文件 (7)
4.?剛寫的八皇后問題 - 遞歸 (隨便你定義幾個皇后了)JAVA(4)
5.?火車運煤問題(4)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 沉思的狗
[ThinkingDog]是一個積極向上、樂觀、熱心的人。
主站蜘蛛池模板:
毛片免费视频观看
|
久久夜色精品国产亚洲AV动态图
|
亚洲一级片内射网站在线观看
|
亚洲国产日产无码精品
|
久久精品国产免费观看
|
久久精品国产亚洲AV电影
|
99免费在线观看视频
|
久久精品亚洲中文字幕无码麻豆
|
女人体1963午夜免费视频
|
亚洲国产一区国产亚洲
|
少妇人妻偷人精品免费视频
|
亚洲欧洲无码一区二区三区
|
毛片免费观看网址
|
成人区精品一区二区不卡亚洲
|
精品国产免费一区二区
|
污网站在线免费观看
|
最新亚洲成av人免费看
|
可以免费观看的国产视频
|
久久综合亚洲色HEZYO社区
|
免费毛片在线看片免费丝瓜视频
|
亚洲日韩亚洲另类激情文学
|
日韩在线a视频免费播放
|
五月婷婷免费视频
|
97久久精品亚洲中文字幕无码
|
久久久亚洲精品国产
|
最近免费中文在线视频
|
日本亚洲色大成网站www久久
|
亚洲剧情在线观看
|
国产精品免费视频网站
|
久久国产乱子伦精品免费午夜
|
亚洲精品WWW久久久久久
|
花蝴蝶免费视频在线观看高清版
|
中文字幕亚洲日韩无线码
|
亚洲黄色免费电影
|
亚洲色偷偷色噜噜狠狠99
|
国产资源免费观看
|
CAOPORM国产精品视频免费
|
亚洲韩国精品无码一区二区三区
|
色欲国产麻豆一精品一AV一免费
|
亚洲日本国产乱码va在线观看
|
亚洲中文无码卡通动漫野外
|