多執行緒的使用

2022-09-12 11:57:19 字數 1102 閱讀 9183

執行緒,有時被稱為輕量級程序(lightweight process,lwp),是程式執行流的最小單元。乙個標準的執行緒由執行緒id,當前指令指標(pc),暫存器集合和堆疊組成。另外,執行緒是程序中的乙個 實體,是被系**立排程和分派的基本單位,執行緒自己不擁有系統資源,只擁有一點兒在執行中必不可少的資源,但它可與同屬乙個程序的其它執行緒共享程序所擁有 的全部資源。乙個執行緒可以建立和撤消另乙個執行緒,同一程序中的多個執行緒之間可以併發執行。由於執行緒之間的相互制約,致使執行緒在執行中呈現出間斷性。執行緒也 有就緒、阻塞和執行三種基本狀態。每乙個程式都至少有乙個執行緒,若程式只有乙個執行緒,那就是程式本身。

執行緒是程式中乙個單一的順序控制流程。在單個程式中同時執行多個執行緒完成不同的工作,稱為多執行緒。

一,  

1,下面乙個簡單的例子,

1

static

void main(string

args)27

8public

static

void

show()

9

2,執行緒池的使用

1

///2

///結構體

3///

4public

struct

stateinfo59

10static

void main(string

args)11;

16var manualevents = new

manualresetevent[count];

17for (int i = 0; i < count; i++)

1826

27//

等待執行緒全部完成

28waithandle.waitall(manualevents);

2930

console.readline();31}

3233

static

object locker = new

object

();34

static

void pooledfunc(object

state)

3544

}45 }

多執行緒的使用

建立子執行緒的幾種方式 第一種方式 使用執行緒類 nsthread nsthread detachnewthreadselector selector task1 totarget self withobject nil 第二種方式 使用執行緒類,需要手動開啟子執行緒 nsthread thread...

多執行緒的使用

using system using system.threading namespace 15.1thread 正在執行測試方法 thread.currentthread.name static void main string args 乙個可能的情況,因為多執行緒是並行的,不能確定每一次具體的...

多執行緒的使用

package cm.aichijihua public class threadtest1 catch interruptedexception e system.out.println thread.currentthread getname system.out.println this.ge...