public TestClass{
public Task<int> GetRandomNumber() {
return Task.FromResult(new Random().Next(0, 1500));
}
}
public class Default
{
static void Main(string[] args)
{
var test = new TestClass();
List<int> adddata = new List<int>();
for (int i = 0; i < 3; i++)
{
var result = Task.Run(() => test.GetRandomNumber());
Console.WriteLine("The values that will be added are :{0}", result.Result);
adddata.Add(result.Result);
}
Console.WriteLine("The value is :{0}", adddata.Sum(v => v));
}
}
Проблема случайного числа возвращает одинаковые числа, 68, 68, 122, когда он должен возвращать отличное число, что я делаю неправильно. Я пытаюсь узнать, как использовать задачу в C# .THANKS!Добавить числа путем генерации случайных задач, содержащих числа
КПП. даже если вы каждый раз не создаете новый объект «Случайный» (и не решаете проблему безопасности потока), «случайный» по-прежнему не означает «уникальный». Таким образом, все еще могут быть некоторые номера (время от времени). Если вам нужны * уникальные * случайные числа, обычный подход состоит в том, чтобы иметь все возможные числа в пуле, а затем случайным образом принимать (и удалять) числа из этого пула. В вашем случае введите новый список (Enumerable.Range (0, 1500)) 'и идите оттуда. –
Corak