Как запустить асинхронный поток? - С#.NET
Знаю, что влез в невылазные дебри, но нужно, дабы не висла форма у программы.
У меня есть функция, ее нужно запустить параллельно основному потоку, чтобы можно было продолжать работу с формой, и чтобы форма не зависала.
Я раньше (в прошлой свой программе) запускал асинхронно процедуры с помощью:
var t := new Thread(procedure());
t.Start;
Но так как это не дало нужного результата по времени, я продолжил поиски и нашел:
BeginInvoke(method: System.Delegate);
Это уже дало прирост во времени "независания" программы. Пришлось мою процедуру, превратить в функцию и назначить возвращаемый тип: System.Delegate, чтобы работала программа, но сам, что это такое, не знаю.
Теперь же нужно функцию запустить в асинхронном потоке, чтобы вернуло значение, а как это сделать тоже не знаю
Помогите...
Чтобы форма не зависала, обычно делают Application.DoEvents() - зачем тебе потоки то?