C#創(chuàng)建線程帶參數(shù)的方法
1、無參數(shù)線程的創(chuàng)建
Thread thread = new Thread(new ThreadStart(getpic));
thread.Start();
private void showmessage()
{
Console.WriteLine("hello world");
}
2、帶一個參數(shù)的線程
使用ParameterizedThreadStart,調(diào)用 System.Threading.Thread.Start(System.Object) 重載方法時將包含數(shù)據(jù)的對象傳遞給線程。
注意傳遞的參數(shù)只能是object類型,不過可以進(jìn)行強(qiáng)制類型轉(zhuǎn)換。
Thread thread = new Thread(new ParameterizedThreadStart(showmessage));
string o = "hello";
thread.Start((object)o);
private static void showmessage(object message)
{
string temp = (string)message;
Console.WriteLine(message);
}
3、帶兩個及以上參數(shù)的線程
這時候可以將線程執(zhí)行的方法和參數(shù)都封裝到一個類里邊,通過實(shí)例化該類,方法就可以調(diào)用屬性來盡享傳遞參數(shù)。
例如如下程序,想傳入兩個string變量,然后打印輸出。
public class ThreadTest
{
private string str1;
private string str2;
public ThreadTest(string a, string b)
{
str1 = a;
str2 = b;
}
public void ThreadProc()
{
Console.WriteLine(str1 + str2);
}
}
public class Example {
public static void Main()
{
ThreadTest tt = new ThreadTest("hello ", "world");
Thread thread = new Thread(new ThreadStart(tt.ThreadProc));
thread.Start();
}
}
以上所述是小編給大家介紹的C#創(chuàng)建線程帶參數(shù)的方法 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- 淺談C#跨線程調(diào)用窗體控件(比如TextBox)引發(fā)的線程安全問題
- C#實(shí)現(xiàn)線程安全的簡易日志記錄方法
- c#使用多線程的幾種方式示例詳解
- C#實(shí)現(xiàn)終止正在執(zhí)行的線程
- c# winform多線程的小例子
- C#向線程中傳遞多個參數(shù)的解決方法(兩種)
- C#實(shí)現(xiàn)多線程寫入同一個文件的方法
- c# winform 關(guān)閉窗體時同時結(jié)束線程實(shí)現(xiàn)思路
- C#線程 BeginInvoke和EndInvoke使用方法
- C#隊(duì)列Queue多線程用法實(shí)例
- c# 線程安全隊(duì)列的用法原理及使用示例
相關(guān)文章
C#實(shí)現(xiàn)系統(tǒng)桌面右下角彈框
這篇文章主要為大家詳細(xì)介紹了C#如何實(shí)現(xiàn)系統(tǒng)桌面右下角彈框,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下2023-01-01
C#異步綁定數(shù)據(jù)實(shí)現(xiàn)方法
這篇文章主要介紹了C#異步綁定數(shù)據(jù)實(shí)現(xiàn)方法,實(shí)例分析了C#操作數(shù)據(jù)庫及異步綁定的相關(guān)實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-09-09

