多執行緒 建立新執行緒

2021-09-22 22:00:16 字數 1110 閱讀 6145

執行緒是**的執行序列或者執行路徑。執行緒與程序的概念有一些類似,它類似於乙個輕量級的程序;乙個作業系統可以執行多個程序,乙個程序內可以執行多個執行緒。每個應用程式至少執行在乙個執行緒上。當只有乙個執行緒時,稱作單執行緒應用程式,該執行緒由系統自動建立。

下面看乙個簡單單執行緒例子:

如上圖,本短程式從入口函式main進入,然後一次執行到結束。

執行main

方法的執行緒通常被成為主線程,主線程的入口也是應用程式的起始點。對於單執行緒的應用程式來說,**的執行是順序的。

但是在多執行緒中,當新執行緒被手動開啟之後,主線程將不再等待被開啟的新執行緒,直接執行後面的**。

下面來介紹兩種為兩種入口方法來進入新執行緒:

首先,引入執行緒的基本操作類:

下面是建立執行緒的方法:

namespace workerthreadtest

; worker.start(obj); //開啟有引數執行緒

console.writeline("main thread ends");

console.readkey();

#endregion

}static void threadentry(object obj)

}//要開啟的新執行緒

static void threadentry()

}public class shareresource

;public void add(string item)}}

建立乙個新執行緒可以使用上述兩種方法:threadstart方法和parameterizedthreadstart方法,這兩個方法分別定義了無引數的入口方法和有引數的入口方法。

建立新執行緒

在進行多執行緒程式設計的時候,我們經常用到afxbeginthread函式來啟動一條執行緒 該函式使用起來非常的簡單方便,其定義如下 cwinthread afxbeginthread afx threadproc pfnthreadproc,執行緒函式位址 lpvoid pparam,執行緒引數 ...

執行緒中建立新執行緒,退出機制

執行緒中建立新執行緒,退出機制 程式 include include include include pthread t son t 0 void cleanup void 這一句是找出本程序的所有執行緒.printf clean n void son cleanup void void test ...

多執行緒學習 建立執行緒

執行緒的建構函式 public thread public thread runnable target public thread string name public thread runnable target,string name public thread threadgroup gro...