Я хочу создать приложение WPF, которое делает следующее: приложение будет иметь 8 задач, работающих вместе. Каждая задача сможет добавить несколько строк в текстовое поле, отображаемое в главном окне.
как заставить все задачи выполняться одновременно и выполняться в основном потоке пользовательского интерфейса?
(30/04/13:)
см. следующий код:
private void RunTasks(int ThreadsNumber)
{
int Ratio = NumbersToCheck / ThreadsNumber;
for (int i = 0; i < ThreadsNumber; i++)
{
Task.Run(() =>
{
int counter = 0;
int low = Ratio * i;
int high = Ratio * (i + 1);
Dispatcher.Invoke(DispatcherPriority.Normal,
(Action)(() =>
{
for (int j = low; j < high; j++)
{
if(IsPrime(j))
MessageList.Items.Add(j);
}
}));
});
}
}
MessageList — это список. почему, когда я запускаю этот код, id не видит наименьшие простые числа, добавленные в этот список? (3,5,7,11 и так далее).