Top.Mail.Ru
Ответы

Как запустить асинхронный поток? - С#.NET

Знаю, что влез в невылазные дебри, но нужно, дабы не висла форма у программы.

У меня есть функция, ее нужно запустить параллельно основному потоку, чтобы можно было продолжать работу с формой, и чтобы форма не зависала.

Я раньше (в прошлой свой программе) запускал асинхронно процедуры с помощью:

var t := new Thread(procedure());
t.Start;

Но так как это не дало нужного результата по времени, я продолжил поиски и нашел:

BeginInvoke(method: System.Delegate);

Это уже дало прирост во времени "независания" программы. Пришлось мою процедуру, превратить в функцию и назначить возвращаемый тип: System.Delegate, чтобы работала программа, но сам, что это такое, не знаю.

Теперь же нужно функцию запустить в асинхронном потоке, чтобы вернуло значение, а как это сделать тоже не знаю
Помогите...

Только авторизированные пользователи могут оставлять свои ответы
Дата
Популярность
Аватар пользователя
Мудрец
9лет

Чтобы форма не зависала, обычно делают Application.DoEvents() - зачем тебе потоки то?