Примерно так:
public delegate void Worker();
private static Thread worker;
public static void Init(Worker work)
{
worker = new Thread(new ThreadStart(work));
worker.Start();
}
public static void Work()
{
// do stuff
}
Тогда начинайте, звоня Init(Work)
.
Если вы вызываете BeginInvoke()
или ThreadPool.QueueUserWorkItem()
, он использует поток пула потоков ASP.NET, что может повлиять на масштабируемость вашего приложения.
Если это полезно, я подробно расскажу об этих проблемах в своей книге, вместе с примерами кода, примерами тестов и т. Д .: Сверхбыстрый ASP.NET .