Тема вообще не раскрыта 1. Task Run гарантировоно запускается в другом потоке (в потоке отличном от того, где Task Run был вызван, обычно запукается для вычистения CPU-bound операций), берется данный поток из пулла потоков, ставит в очередь делегат который мы передали и запускает его. 2. Task Run, кстати говоря сам имеет перегрузку с агрументом CancellationToken и сделано это для того, чтобы отменить задачу кооперативно, то есть перед тем как Task Run будет запускать переданный делегат на пуле потоков, он сам вначале проверит переданный CancellationToken, а именно, не был ли он уже отменен и кинет исключение, если это так, что может сэкономить кучу времени на случай если операция длительная и сложная.
Вот пример: static async Task Main(string[] args) {
try { var cts = new CancellationTokenSource(); var token = cts.Token;
// отменяем пока еще не выполняется сам делегат cts.Cancel();
var task = Task.Run(() => ToDoAsync(token));
// если не пробросить token и в Task Run вторым агрументом // то на этом этапе task.IsCanceled вернет false, хотя задача уже явно // была отменена давно и в методе ToDoAsync придеться ждать 60 сек // пока кинется исключение отмены if (task.IsCanceled) { Console.Write(«Canceled»); }
охохох очень сложно слушать слово — «ага» убирайте срочно((( Можно заменить. на понятно? Вопросы есть? и т.д. В звуке есть шум его нужно убрать как собственно и качество видео оставляет желать лучшего...(((((
Офигенный вебинар, прям то что мне было нужно. Жалко не раскрыта тема ранеров — где живут, как создаются свои, как они линкуются к конкретной джобе или пайпу. Если кто-то знает прикольное видео на эту темы, не будьте буками — посоветуйте мне пожалуйста.
«Нам поручили провести экспертную оценку, но это же не значит что она должна быть объективной» ))))) Проговорился, интехратор)))) И ещё, вы действительно не понимаете разницы между внешним и внутренним нарушителем, который имеет удаленный доступ в систему?
Ребят, сделайте пожалуйста дополнительную функцию для вкладки «Производство».
На примере закупки станка или оборудования. Если я собираюсь закупить станок за 500.000₽ и учесть это в себестоимости воспроизводимого товара + амортизация станка + срок использования станка. Для правильного расчета себестоимости конечного продукта. Или уже есть такой функционал?
1. Task Run гарантировоно запускается в другом потоке (в потоке отличном от того, где Task Run был вызван, обычно запукается для вычистения CPU-bound операций), берется данный поток из пулла потоков, ставит в очередь делегат который мы передали и запускает его.
2. Task Run, кстати говоря сам имеет перегрузку с агрументом CancellationToken и сделано это для того, чтобы отменить задачу кооперативно, то есть перед тем как Task Run будет запускать переданный делегат на пуле потоков, он сам вначале проверит переданный CancellationToken, а именно, не был ли он уже отменен и кинет исключение, если это так, что может сэкономить кучу времени на случай если операция длительная и сложная.
Вот пример:
static async Task Main(string[] args)
{
try
{
var cts = new CancellationTokenSource();
var token = cts.Token;
// отменяем пока еще не выполняется сам делегат
cts.Cancel();
var task = Task.Run(() => ToDoAsync(token));
// если не пробросить token и в Task Run вторым агрументом
// то на этом этапе task.IsCanceled вернет false, хотя задача уже явно
// была отменена давно и в методе ToDoAsync придеться ждать 60 сек
// пока кинется исключение отмены
if (task.IsCanceled)
{
Console.Write(«Canceled»);
}
await task;
}
catch (OperationCanceledException e)
{
Console.WriteLine(e);
}
}
public static async Task ToDoAsync(CancellationToken token)
{
await Task.Delay(60000);
token.ThrowIfCancellationRequested();
}
3. В методе Process в Task.Delay() так же нужно прокинуть token, по той же причине что и выше.
Мне понравилось.
В звуке есть шум его нужно убрать как собственно и качество видео оставляет желать лучшего...(((((
На примере закупки станка или оборудования. Если я собираюсь закупить станок за 500.000₽ и учесть это в себестоимости воспроизводимого товара + амортизация станка + срок использования станка. Для правильного расчета себестоимости конечного продукта. Или уже есть такой функционал?