暫記
using System.Threading; //必要引用
//啟動額外執行緒
ThreadStart run = new ThreadStart(ConnectReader);
var thread = new Thread(functionName);
thread.Start();
//啟動帶參數額外執行緒(參數只能有一個,而且資料型態必須是object)
ParameterizedThreadStart run = new ParameterizedThreadStart(object parameter));
thread_StartReader = new Thread(run);
thread_StartReader.Start();
//與多執行緒有關的應用方法
BeginInvoke(IAsyncResult); //當呼叫此執行緒的執行緒結束後才執行
Invoke(IAsyncResult); //直接執行呼叫的執行緒
EndInvoke(IAsyncResult); //結束指定的執行緒
//免宣告委派直接在主執行緒執行function
if (InvokeRequired){
//不帶參數
BeginInvoke(new Action(functionName));
//帶參數
BeginInvoke(new Action<參數型別,參數型別,..>(方法名稱), 參數1, 參數2,..參數N);
BeginInvoke(new Action<bool, string>(functionName), false, ex.Message);
}