[ThinkingDog]是一個積極向上、樂觀、熱心的人。
沉思的狗の博客
[ThinkingDog]歡迎您的光臨,請多多指教!
線程通信--拷貝文件(仿此可以做網(wǎng)絡(luò)間的數(shù)據(jù)通訊)
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
"
);
}
}
}
發(fā)表于 2007-05-08 16:40
沉思的狗
閱讀(269)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發(fā)表評論。
網(wǎng)站導(dǎo)航:
博客園
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
導(dǎo)航
BlogJava
首頁
發(fā)新隨筆
發(fā)新文章
聯(lián)系
聚合
管理
統(tǒng)計(jì)
隨筆: 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)
網(wǎng)址
http://blog.csdn.net/Unagain
v_JULY_v
搜索
積分與排名
積分 - 211653
排名 - 267
最新評論
1.?re: 使用Policy文件來設(shè)置Java的安全策略[未登錄]
ss
--啊啊
2.?re: Jni中C++和Java的參數(shù)傳遞
老大,Long 是J啊,不是L啊,可害苦我了,趕緊改回來吧;
--cnhua5
3.?re: Jni中C++和Java的參數(shù)傳遞
樓主,在jni里返回String和C++里獲取的為什么不一樣,比如在java里看到的值是57891234,在C++里顯示的是5789@,這是為什么???
--chr
4.?re: 螺旋數(shù)字與坐標(biāo)
對我的項(xiàng)目很有幫助。
謝謝
--cs221313
5.?re: Jni中C++和Java的參數(shù)傳遞
long的符號表寫錯了,作為初學(xué)者亞歷山大啊
--hhhhhh
閱讀排行榜
1.?Jni中C++和Java的參數(shù)傳遞 (63568)
2.?本地計(jì)算機(jī)上的 MSSQLSERVER 服務(wù)啟動后又停止了。一些服務(wù)自動停止,如果它們沒有什么可做的,例如“性能日志和警報(bào)”服務(wù)。[用批處理解決](22466)
3.?使用Policy文件來設(shè)置Java的安全策略(10527)
4.?一個簡單的十六進(jìn)制計(jì)算器(出自Win程序設(shè)計(jì))(8753)
5.?VC++6.0 全部默認(rèn)快捷鍵(6229)
評論排行榜
1.?Upload Server (HTTP 上傳服務(wù)JAVA程序) 速度極快(11)
2.?Jni中C++和Java的參數(shù)傳遞 (10)
3.?垃圾軟件反刪除批處理文件 (7)
4.?剛寫的八皇后問題 - 遞歸 (隨便你定義幾個皇后了)JAVA(4)
5.?火車運(yùn)煤問題(4)
Powered by:
博客園
模板提供:
滬江博客
Copyright ©2025 沉思的狗
[ThinkingDog]是一個積極向上、樂觀、熱心的人。
主站蜘蛛池模板:
成年午夜视频免费观看视频
|
玖玖在线免费视频
|
拨牐拨牐x8免费
|
亚洲精品视频在线免费
|
久久精品免费观看
|
国产A在亚洲线播放
|
日韩精品内射视频免费观看
|
亚洲大尺度无码无码专区
|
一区二区三区免费电影
|
亚洲色欲一区二区三区在线观看
|
a级毛片免费观看在线
|
亚洲桃色AV无码
|
性xxxx视频免费播放直播
|
99久久精品国产亚洲
|
台湾一级毛片永久免费
|
亚洲欧美日韩中文无线码
|
亚洲无线一二三四区手机
|
免费在线观看自拍性爱视频
|
亚洲精品国产精品乱码不卞
|
国产无遮挡又黄又爽免费网站
|
亚洲中文字幕无码日韩
|
久久er国产精品免费观看2
|
久久精品国产亚洲AV高清热
|
一个人在线观看视频免费
|
亚洲AV成人精品日韩一区
|
国产日产亚洲系列最新
|
未满十八18禁止免费无码网站
|
一级毛片免费不卡直观看
|
亚洲欧洲日产国码无码久久99
|
免费国产叼嘿视频大全网站
|
亚洲中字慕日产2020
|
日本特黄a级高清免费大片
|
国产成人1024精品免费
|
亚洲综合一区二区精品导航
|
午夜视频在线在免费
|
精品国产污污免费网站入口在线
|
久久亚洲熟女cc98cm
|
免费a级毛片无码a∨性按摩
|
午夜免费啪视频在线观看
|
久久亚洲中文字幕无码
|
亚洲av中文无码乱人伦在线r▽
|