程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 多線程-C#創建線程調用方法參數出錯

多線程-C#創建線程調用方法參數出錯

編輯:編程綜合問答
C#創建線程調用方法參數出錯

我想創建幾個線程來熟悉多線程的一些知識於是寫了一個小程序

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;

namespace 多線程試驗
{
    class Program
    {
        static void Main(string[] args)
        {
            int 線程計數器 = 1;
            函數庫 H = new 函數庫();
            Thread th1 = new Thread(new ThreadStart(H.顯示(線程計數器)));
            線程計數器++;
            Thread th2 = new Thread(new ThreadStart(H.顯示(線程計數器)));
            線程計數器++;
            Thread th3 = new Thread(new ThreadStart(H.顯示(線程計數器)));
            線程計數器++;

        }
    }
}

上面是主方法,下面是我要用到的方法

 using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Threading;
using System.Windows;

namespace 多線程試驗
{
    class 函數庫
    {
        public void 顯示(int i)
        {
            Console.WriteLine("這是第{0}個線程",i);
            Thread.Sleep(2000);
            Console.WriteLine("第{0}個線程結束",i);
        }
    }
}

但是在主函數中直接調用就沒問題,但是如果在創建線程的時候作為參數調用方法就會出問題,錯誤提示是“應輸入方法名稱”。求各位大神解惑,先謝過!
錯誤代碼是
Thread th1 = new Thread(new ThreadStart(H.顯示(線程計數器)));
Thread th2 = new Thread(new ThreadStart(H.顯示(線程計數器)));
Thread th3 = new Thread(new ThreadStart(H.顯示(線程計數器)));
這三句

最佳回答:


調用的方法不對,參考:http://blog.sina.com.cn/s/blog_7d892a6701018lkv.html

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved