Я новичок в MS TPL. поэтому я видел некоторое время, когда люди используют TaskScheduler.FromCurrentSynchronizationContext
при запуске любой задачи, используя Task.Factory.StartNew()
, и некоторое время TaskScheduler
не используется, когда люди запускают задачу.Что касается использования TaskScheduler.FromCurrentSynchronizationContext & Task.Factory.StartNew()
var uiScheduler = TaskScheduler.FromCurrentSynchronizationContext();
Task.Factory.StartNew(() =>
{
});
Task.Factory.StartNew(() =>
{
});
поэтому, пожалуйста, скажите, пожалуйста, что такое использование TaskScheduler
? когда TaskScheduler
следует использовать вместе с Task.Factory.StartNew
, и когда не следует использовать TaskScheduler
.
, пожалуйста, поясните небольшим примером кода, чтобы лучше понять использование TaskScheduler
.
другой вопрос, как мы можем планировать такую задачу, когда мы создаем задачу, как я могу указать время, дату или день, когда задача должна быть запущена. спасибо
спасибо за ответ, но мне нравится знать, какое преимущество будет выполнять любая задача в потоке пользовательского интерфейса? может дать мне два примера кода один для потока пользовательского интерфейса, а другой для пула потоков, используя задачу parallel library.thanks – Mou
@Mou Если у вас есть код, который должен управлять вашим пользовательским интерфейсом, вы запускаете его в потоке пользовательского интерфейса, поэтому он действительно будет работать. Если вам не нужно манипулировать пользовательским интерфейсом и хотите, чтобы пользовательский интерфейс манипулировал собой, пока вы делаете другие вещи, вы не запускаете его в потоке пользовательского интерфейса. Что касается примеров, это буквально вопрос добавления переменной в список параметров по сравнению с ее отсутствием. Я полностью уверен в вашей способности выяснить, как добавить или опустить параметр для вызова метода самостоятельно. Если вам все еще нужны примеры, документы MSDN предоставляют их для каждой перегрузки. – Servy
некоторые, где я читал, что uiScheduler делает процесс медленным ... это правда, потому что я часто видел, что люди не используют uiScheduler при запуске любой задачи. – Mou