0
У меня есть массив и номер, сохраненный в нем:Как связать каждый элемент массива с функцией?
int[] numbers = new int[5] {1, 2, 3, 4, 5 };
У меня есть метод случайным образом подобрать номер:
Random rnd = new Random();
int r = rnd.Next(numbers.Length);
int Token = (numbers[r]);
Я каждый маркер, связанный с методом:
if (Token == 1)
{
ThreadStart Ref1 = new ThreadStart(f.VehicleThread1);
Thread Th1 = new Thread(Ref1);
Th1.Start();
}
if (Token == 2)
{
ThreadStart Ref2 = new ThreadStart(f.VehicleThread2);
Thread Th2 = new Thread(Ref2);
Th2.Start();
}
if (Token == 3)
{
ThreadStart Ref3 = new ThreadStart(f.VehicleThread3);
Thread Th3 = new Thread(Ref3);
Th3.Start();
}
if (Token == 4)
{
ThreadStart Ref4 = new ThreadStart(f.VehicleThread4);
Thread Th4 = new Thread(Ref4);
Th4.Start();
}
if (Token == 5)
{
ThreadStart Ref5 = new ThreadStart(f.VehicleThread5);
Thread Th5 = new Thread(Ref5);
Th5.Start();
}
Но если я попытаюсь прервать нить вне этого, это приведет к появлению сообщения об ошибке.
if (Token == 1)
list.RemoveAt(0);
numbers = list.ToArray(typeof(int)) as int[];
Th1.Abort();
Не можете просто создать массив Func или действий в случае вам не нужно возвращаемое значение? – Save