我用C#編寫的代碼:C# - 多線程
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Program re = new Program();
re.actual();
}
public void actual()
{
Thread input = new Thread(input_m);
Thread timing = new Thread(timing_m);
input.Start();
timing.Start();
}
public void input_m()
{
Console.WriteLine("Choose a number from 1-10 (You have 10 seconds): ");
Console.ReadKey();
}
public void timing_m()
{
System.Threading.Thread.Sleep(10000);
input.Abort();
Console.Clear();
Console.WriteLine("Time's up!");
Console.ReadKey();
}
}
}
現在,我得到這個錯誤:
Error 1 The name 'input' does not exist in the current context
它說,有關「input.Abort(); 「線。
我可以以某種方式從另一個方法終止此線程(而不是從它創建的地方)?
我不想讓它們成爲靜態的,所以請不要這麼說。
Thread.Abort的()是真的真的[衰](http://stackoverflow.com/questions/710070/timeout-pattern-how-bad-is-thread-abort - 當然)... – Chris
'控制檯'塊。 –