學習博客
BlogJava
首頁
新文章
新隨筆
聚合
管理
[導入]多線程例子,傳數據|軟件開發|轉自博客園
用回調方法檢索數據
下面的示例演示了一個從線程中檢索數據的回調方法。包含數據和線程方法的類的構造函數也接受代表回調方法的委托;
在線程方法結束前,它調用該回調委托。
*/
using
System;
using
System.Threading;
//
被實例化的類,用于傳遞參數進行操作
public
class
ThreadWithState
{
private
string
boilerplate;
private
int
value;
//
定義一個回調函數
private
ExampleCallback callback;
//
接收線程傳遞的參數
public
ThreadWithState(
string
text,
int
number, ExampleCallback callbackDelegate)
{
boilerplate
=
text;
value
=
number;
callback
=
callbackDelegate;
}
public
void
ThreadProc()
{
Console.WriteLine(boilerplate, value);
//
判斷是否執行回調函數、并把參數傳遞給回調函數
if
(callback
!=
null
)
callback(
1
);
}
}
//
聲明一個回調函數:注意傳遞的參數要與Example類中的函數參數類型一致
public
delegate
void
ExampleCallback(
int
lineCount);
//
事例主類
public
class
Example
{
public
static
void
Main()
{
//
實例化ThreadWithState,并傳遞參數,注意:new ExampleCallback(ResultCallback)的命名空間引用,及其傳遞的參數(ResultCallback函數)
ThreadWithState tws
=
new
ThreadWithState(
"
This number {0}.
"
,
42
,
new
ExampleCallback(ResultCallback));
Thread t
=
new
Thread(
new
ThreadStart(tws.ThreadProc));
t.Start();
Console.WriteLine(
"
線程開始執行
"
);
//
此為判斷線程是否執行結束,但不建議阻塞線程,這樣線程就會等待完成后再進行其他操作
//
可利用:t.IsAlive是否處于執行狀態來判斷線程
t.Join();
Console.WriteLine(
"
線程執行結束
"
);
}
//
回調處理函數,應與ExampleCallback的參數類型應一致
public
static
void
ResultCallback(
int
lineCount)
{
Console.WriteLine(
"
printed {0} lines.
"
, lineCount);
}
}
向線程傳遞數據
/**/
/*
向線程傳遞數據
ThreadStart 委托既沒有參數也沒有返回值。這意味著不可以使用需要參數的方法啟動線程,或從方法中獲得返回值。
為向線程傳遞數據,需要創建一個用來保持數據和線程方法的對象,如下面的兩個代碼示例所示。
為檢索線程方法的結果,您可以使用回調方法,如第二個代碼示例中所示。
*/
using
System;
using
System.Threading;
//
被實例化的類,用于傳遞參數進行操作
public
class
ThreadWithState
{
private
string
boilerplate;
private
int
value;
public
ThreadWithState(
string
text,
int
number)
{
boilerplate
=
text;
value
=
number;
}
public
void
ThreadProc()
{
Console.WriteLine(boilerplate, value);
}
}
//
創建線程調用ThreadWithState
public
class
Example
{
public
static
void
Main()
{
//
實例化類ThreadWithState,利用構造函數向線程傳遞參數
ThreadWithState tws
=
new
ThreadWithState(
"
This number {0}.
"
,
42
);
//
創建線程并執行ThreadWithState類中的ThreadProc函數
Thread t
=
new
Thread(
new
ThreadStart(tws.ThreadProc));
t.Start();
Console.WriteLine(
"
線程開始執行
"
);
//
此為判斷線程是否執行結束,但不建議阻塞線程,這樣線程就會等待完成后再進行其他操作
//
可利用:t.IsAlive是否處于執行狀態來判斷線程
t.Join();
Console.WriteLine(
"
線程執行結束
"
);
}
}
文章來源:
http://www.cnblogs.com/wangdetian168/archive/2008/12/21/1359255.html
posted on 2010-09-28 10:54
sanmao
閱讀(73)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(5)
給我留言
查看公開留言
查看私人留言
隨筆分類
myeclipse(2)
水晶報表
隨筆檔案
2018年10月 (1)
2017年11月 (1)
2015年6月 (1)
2015年1月 (1)
2014年11月 (1)
2014年7月 (1)
2014年3月 (2)
2013年12月 (3)
2013年11月 (2)
2013年10月 (1)
2013年9月 (2)
2013年8月 (1)
2013年6月 (3)
2013年4月 (1)
2013年3月 (2)
2013年2月 (1)
2013年1月 (4)
2012年12月 (4)
2012年10月 (1)
2012年9月 (6)
2012年8月 (1)
2012年4月 (1)
2012年3月 (1)
2012年2月 (9)
2011年12月 (6)
2011年10月 (1)
2011年9月 (5)
2011年8月 (18)
2011年7月 (12)
2011年6月 (11)
2011年5月 (12)
2011年4月 (15)
2011年3月 (25)
2011年2月 (14)
2011年1月 (19)
2010年12月 (24)
2010年11月 (60)
2010年10月 (85)
2010年9月 (197)
2010年8月 (27)
2010年7月 (26)
2010年6月 (2)
2010年5月 (4)
2010年4月 (4)
2010年3月 (11)
2010年2月 (4)
2010年1月 (6)
2009年12月 (8)
2009年11月 (7)
2009年10月 (4)
2009年9月 (6)
2009年8月 (4)
2009年7月 (14)
2009年6月 (35)
2009年4月 (36)
2009年3月 (48)
2009年2月 (21)
2009年1月 (12)
搜索
最新評論
1.?re: 解決方法:An error occurred on the server when processing the URL. Please contact the system administrator
太謝謝你了 服務器搞了幾天了 網上搜索一大堆 加個端口 就OK了 郁悶!~
--謝謝你
2.?re: PowerDesigner使用教程|使用方法
評論內容較長,點擊標題查看
--RYJ
3.?re: PowerDesigner使用教程|使用方法
大愛樓主啊~
--RYJ
4.?re: 連續循環向上滾動代碼
恭喜快捷付一卡通張先生借款202522,成功打入卡中
--啥都吃
5.?re: jquery-1.5.2.min js下載
好
--啊啊啊
6.?re: 解決方法:An error occurred on the server when processing the URL. Please contact the system administrator
幫我解開
--段秀林
7.?企業班組長管理證書
查找證書
--朱培義
8.?re: Oracle 11g 下載|Oracle 11g 官網下載|Oracle 11g 官網下載 帶登錄用戶和密碼
樓主你那賬號好像登不了
--學咖妃的菜鳥
9.?re: ORACLE 10g下載|ORACLE 10g下載地址|ORACLE 10g官網下載地址[未登錄]
感謝樓主 現在oracle10G 實在不好找了 感謝分享這么全的 一文在手 天下我有
--wj
10.?re: 解決方法:An error occurred on the server when processing the URL. Please contact the system administrator[未登錄]
ssss
--s
11.?re: jquery ui dialog|popup 彈出窗口層
單獨的
--單獨的
12.?re: jquery ui dialog|popup 彈出窗口層
出錯的vV熱情
--單獨的
13.?re: [導入]MyEclipse 8.5 M1注冊碼|MyEclipse 8.5 M2注冊碼
asdf
--潘坤
14.?re: PowerDesigner使用教程|使用方法[未登錄]
第二個 畫圖的工具怎么點出來啊
--1
15.?re: 水晶報表的顯示報表數據[未登錄]
123456
--123
16.?re: PowerDesigner使用教程|使用方法
學的很好啊,謝謝樓主
--四海驕陽
17.?re: Ext.grid.GridPanel |屬性|方法|配置|詳細介紹
asdf
--asdf
18.?re: oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載
登錄不了啊
--Stevies
19.?re: oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載
謝謝!
--Stevies
20.?re: oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載
謝謝,有Linux的就更好了
--oracle
21.?re: Oracle 11g 下載|Oracle 11g 官網下載|Oracle 11g 官網下載 帶登錄用戶和密碼[未登錄]
現在怎么不能下載了
--1
22.?re: PowerDesigner使用教程|使用方法
學習了~
--RYJ
23.?re: PowerDesigner使用教程|使用方法[未登錄]
@haha
好的,不錯
--test
24.?re: oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載[未登錄]
謝謝博主,謝謝各位
--java
25.?re: PowerDesigner使用教程|使用方法
謝謝樓主的分享,非常感謝
--kz
26.?re: PowerDesigner使用教程|使用方法
學習了
--rommr
27.?re: jquery ui dialog|popup 彈出窗口層[未登錄]
11
--1
28.?re: 留言框代碼
人發發是否飛灑發放發送法爾范薩芬
--安安
29.?re: PowerDesigner使用教程|使用方法
請問下樓主 我用腳本反向生成model 怎么講腳本里面的comment在model里面也有(我用的是DB29.1)。
--anuous
30.?re: ORACLE 10g下載|ORACLE 10g下載地址|ORACLE 10g官網下載地址
樓主真是個好人
--zero_cool
31.?re: 在分析向此請求提供服務所需資源時出錯。請檢查下列特定分析錯誤詳細信息并適當地修改源文件[未登錄]
評論內容較長,點擊標題查看
--周周
32.?re: 清華it證書查詢網
結業證書
--嚴定美
33.?re: 獲取域名的正則表達式
www.baidu.com/music
--yj
34.?re: PowerDesigner使用教程|使用方法[未登錄]
very good
--...
35.?re: ORACLE 10g下載|ORACLE 10g下載地址|ORACLE 10g官網下載地址
太感謝分享個賬戶來下載軟件了。謝謝
--ChurKen
36.?re: oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載
謝謝博主了,超級感謝
--#r
37.?re: oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載[未登錄]
謝謝博主,賬號分享超級給力,也謝謝樓上各位沒有改密碼,讓大家都能用、、、
--葉
38.?re: q寵寶貝卸載|怎么卸載
太煩人了
--莜何
39.?re: Oracle 11g 下載|Oracle 11g 官網下載|Oracle 11g 官網下載 帶登錄用戶和密碼
THANKS!
--666
40.?re: web打印控件|打印預覽[未登錄]
11111111111111111111111111111111111111
--111
閱讀排行榜
1.?ORACLE 10g下載|ORACLE 10g下載地址|ORACLE 10g官網下載地址(559734)
2.?Oracle 11g 下載|Oracle 11g 官網下載|Oracle 11g 官網下載 帶登錄用戶和密碼(273976)
3.?PowerDesigner使用教程|使用方法(138593)
4.?jquery js 下載|jquery-1.4.2 下載|jquery最新版本下載(78502)
5.?解決方法:An error occurred on the server when processing the URL. Please contact the system administrator(50530)
6.?完全卸載oracle|oracle卸載|徹底卸載oracle(22852)
7.?oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載(21509)
8.?Ext.grid.GridPanel |屬性|方法|配置|詳細介紹(18247)
9.?杭州市民卡領取查詢網址(17572)
10.?讓iframe 100%填充頁面代碼|100% height|100% width(11834)
11.?js Array 方法|js Array 方法使用(11416)
12.?VS2010下載|官網|Microsoft Visual Studio 2010 (VS2010)旗艦版下載地址(8673)
13.?ORACLE 9i下載|ORACLE 9i下載地址|ORACLE 9i官網下載地址(8596)
14.?bat 批處理 字符串 替換函數 和 字符串截取函數(6938)
15.?[導入]showModalDialog參數詳解|使用方法(6647)
16.?sqlserver sql語句|經典sql語句|實用sql語句(6568)
17.?如何區分大盤股還是小盤股|定義(6391)
18.?vs2010破解|vs2010破解方法|vs2010破解序列號(6256)
19.?plsql8下載|plsql8最新版下載|plsql下載(5987)
20.?Compaq 511系列 顯卡驅動 聲卡驅動 網卡驅動(5787)
21.?STacSV.exe應用程序錯誤|STacSV.exe應用程序錯誤解決方法(5524)
22.?vs2005下載|中文版|官方(5495)
23.?JS 設置文本框只讀(5480)
24.?jquery ui dialog|popup 彈出窗口層(5377)
25.?在分析向此請求提供服務所需資源時出錯。請檢查下列特定分析錯誤詳細信息并適當地修改源文件(4893)
26.?蘇州汽車南站到上海汽車|價格|時刻表(4448)
27.?rasdial 命令|網絡連接自動化與 rasdial 命令(4100)
28.?schema.ini詳解 和 字段類型介紹(4034)
29.?myeclipse 9 序列號(3682)
30.?jquery 下載|jquery 1.6.2 min 版下載(3646)
31.?q寵寶貝卸載|怎么卸載(3585)
32.?sqlserver 2008 r2下載地址|官網下載地址|迅雷下載地址(3561)
33.?PowerDesign最新版下載|PowerDesign15下載|PowerDesign15即破解補丁|PowerDesigner 12.5 下載(3455)
34.?sqllite 管理工具和查詢工具(3215)
35.?國外軟件外包項目網站(3181)
36.?jquery 篩選元素方法(3122)
37.?js 跨域訪問 找了好長時間(3102)
38.?vs2008下載|vs2008中文版下載(3028)
39.?java 過濾器配置(2982)
40.?連續循環向上滾動代碼(2923)
評論排行榜
1.?ORACLE 10g下載|ORACLE 10g下載地址|ORACLE 10g官網下載地址(131)
2.?杭州市民卡領取查詢網址(98)
3.?Oracle 11g 下載|Oracle 11g 官網下載|Oracle 11g 官網下載 帶登錄用戶和密碼(43)
4.?jquery js 下載|jquery-1.4.2 下載|jquery最新版本下載(28)
5.?PowerDesigner使用教程|使用方法(17)
6.?oracle 12c 下載|oracle 12c 官網下載帶用戶名密碼|oracle 12c for windows64下載(13)
7.?清華it證書查詢網(7)
8.?vs2005下載|中文版|官方(5)
9.?留言框代碼(4)
10.?q寵寶貝卸載|怎么卸載(4)
11.?ORACLE 9i下載|ORACLE 9i下載地址|ORACLE 9i官網下載地址(4)
12.?Ext.grid.GridPanel |屬性|方法|配置|詳細介紹(4)
13.?myeclipse 9 序列號(4)
14.?java 動態增加控件(3)
15.?解決方法:An error occurred on the server when processing the URL. Please contact the system administrator(3)
16.?sqlserver 2008 r2下載地址|官網下載地址|迅雷下載地址(3)
17.?win7 不能創建文件夾的解決方法(3)
18.?jquery-1.5.2.min js下載(3)
19.?jquery 驗證文本框數字事件|有效|快捷 給控件綁定清楚非數字事件(3)
20.?jquery ui dialog|popup 彈出窗口層(3)
21.?jquery 注冊驗證例子(2)
22.?杭州絲綢市場|杭州絲綢批發市場(2)
23.?最新版QQ拼音打字法為什么打出來的字中間有豎線?(2)
24.?C# 去所有 html標簽的代碼|去除html標簽代碼(2)
25.?ajax|消息提示框|js獲取html絕對位置 封裝(2)
26.?js 跨域訪問 找了好長時間(2)
27.?Excel.dll下載|Excel.dll下載 asp.net|.net 應用的 Excel dll 下載(2)
28.?[導入]百度舉報垃圾網站的網址(2)
29.?JS 設置文本框只讀(2)
30.?什么是exe 加殼(2)
31.?jquery 實現文本閃爍功能 (2)
32.?oracle sqlserver mysql隨機查詢記錄的sql語句(2)
33.?jquery 下載|jquery 1.6.2 min 版下載(2)
34.?上海公交卡余額查詢網址(2)
35.?Compaq 511系列 顯卡驅動 聲卡驅動 網卡驅動(2)
36.?數據庫范式|數據庫第一范式|數據庫第二范式(2)
37.?js 返回對象|js返回多個值的方法|js如何返回多個值(2)
38.?jquery返回json類型數據集合簡單實現ajax返回多個數據(1)
39.?上傳圖片類代碼(1)
40.?連續循環向上滾動代碼(1)
Copyright ©2025 sanmao Powered By
博客園
模板提供:
滬江博客
主站蜘蛛池模板:
国产亚洲精彩视频
|
亚洲熟女综合一区二区三区
|
二级毛片免费观看全程
|
青青青青青青久久久免费观看
|
无限动漫网在线观看免费
|
亚洲精品mv在线观看
|
四虎在线免费视频
|
亚洲 欧洲 日韩 综合在线
|
性一交一乱一视频免费看
|
国产偷国产偷亚洲清高APP
|
亚洲不卡AV影片在线播放
|
九九热久久免费视频
|
亚洲av无码专区国产乱码在线观看
|
中文字幕免费在线看线人动作大片
|
亚洲国产精品免费观看
|
亚洲最大天堂无码精品区
|
国产一级淫片免费播放电影
|
一级成人生活片免费看
|
亚洲不卡中文字幕无码
|
最近高清中文字幕无吗免费看
|
亚洲欧洲专线一区
|
伊人久久亚洲综合
|
成人在线免费看片
|
麻豆安全免费网址入口
|
亚洲国产精品一区二区第一页
|
99无码人妻一区二区三区免费
|
久久亚洲欧美国产精品
|
亚洲国产精品久久久天堂
|
成人免费一级毛片在线播放视频
|
羞羞网站在线免费观看
|
亚洲AV第一页国产精品
|
在线观看成人免费
|
国产成人免费AV在线播放
|
亚洲人xxx日本人18
|
国产亚洲?V无码?V男人的天堂
|
99热在线免费播放
|
青草青草视频2免费观看
|
精品无码一区二区三区亚洲桃色
|
日韩高清在线免费观看
|
无码一区二区三区免费
|
亚洲AV综合色区无码一二三区
|