初識委託和執行緒並實現乙個簡單搖獎程式

2021-05-26 22:47:38 字數 1107 閱讀 1465

委託是乙個類,它定義了方法的型別,使得可以將方法當作另乙個方法的引數來進行傳遞。我們平常習慣於把資料作為引數傳遞給方法,當要把方法傳遞給其他方法時,就需要使用委託了。在c#使用類時,分兩個階段。首先需要定義這個類,然後例項化該類的乙個物件,使用委託時也需要經過這個步驟,首先定義要使用的委託,然後建立該委託的乙個或多個例項。

定義委託的語法如下:

delegate void wt(); //定義乙個委託

下面我們就使用委託加執行緒實現乙個簡單的搖獎程式

1.首先在form1窗體上新增乙個lable 控制項 和兩個button控制項 如圖(在這裡我把兩個按鈕重合在一起了)

然後新增如下**

using system;

using system.collections.generic;

using system.componentmodel;

using system.data;

using system.drawing;

using system.linq;

using system.text;

using system.windows.forms;

using system.threading;

namespace c1

delegate void wt(); //定義乙個委託

thread th; //定義乙個執行緒

private void form1_load(object sender, eventargs e)

private void xsj()

}public void sj()

private void button1_click(object sender, eventargs e)

private void button2_click(object sender, eventargs e)

private void form1_formclosing(object sender, formclosingeventargs e)}}

}

最後效果 如圖(數字每隔0.1秒會變化)

乙個簡單的執行緒池實現

乙個linux下簡單的執行緒池實現 實現了大部分邏輯,有部分邏輯未實現,只是提供乙個思路 執行緒池類 threadpool.h created on oct 13,2016 author luokun ifndef threadpool h define threadpool h include i...

執行緒池(一) 實現乙個簡單的執行緒池

我們知道頻繁的建立 銷毀執行緒是不可取的,為了減少建立和銷毀執行緒的次數,讓每個執行緒可以多次使用,我們就可以使用執行緒池,可以降低資源到的消耗。執行緒池裡面肯定有多個執行緒,那麼我們就簡單的用乙個陣列來儲存執行緒,那我們我們預設裡面有 5 個執行緒。那我們執行緒池裡只有五個執行緒能同時工作,那同時...

解讀並實現乙個簡單的koa router

koa 應用程式是乙個包含一組中介軟體函式的物件,它是按照類似堆疊的方式組織和執行的。這是 koa 對自己的介紹,其他 koa 依賴的庫其實都可以算是中介軟體,koa router 也不例外。ps 本文 中的中文解釋是對 的講解,省略號 代表省略部分 對 koa router 的猜想 通過 koa ...