Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C# Определить класс "Автомобиль" Определить класс "Автомобиль", предусмотрев в нем данные: марка, цвет, серийный номер, регистрационный номер, год выпуска, цена. Предусмотреть методы для доступа к отдельным данным и вывода их на... https://www.cyberforum.ru/ csharp-beginners/ thread2203390.html C# Заполнить массив двадцатью первыми натуральными числами
Заполнить массив двадцатью первыми натуральными числами, делящимися нацело 13 или на 17 и находящимися в интервале, левая граница которого равна 300.
C# Массив: Переставить числа в массиве так, чтобы сначала шли элементы, меньшие b, равные b, а потом большие b... Дан массив a и число b. Переставить числа в массиве таким образом, чтобы сначала шли элементы, меньшие b, затем равные b, а лишь затем большие b https://www.cyberforum.ru/ csharp-beginners/ thread2203386.html C# Не меняется поле структуры https://www.cyberforum.ru/ csharp-beginners/ thread2203325.html
Здравствуйте! Подскажите, пожалуйста, почему не меняется поле во внутренней структуре: namespace ConsoleApplication1 { struct InternalSctuct { public String caption; ...
C# Readonly field VS Property with get only
using System; public class Test { public class Class1 { public static readonly string F = "field"; public static string P { get; } = "prop"; }
C# Переписывание атрибута для img с HtmlAgilityPack Хочу парсить небольшой сайтик и для этого мне нужно отловить разный мусор в аттрибутах и добавить свой) foreach (HtmlNode node in doc.DocumentNode.SelectNodes("//*/p/img")) { ... https://www.cyberforum.ru/ csharp-beginners/ thread2203280.html
C# Изменение кодировки Здравствуйте. Имеется конструкция, которая производит чтение данных либо с текстового файла, либо с клавиатуры. Возникло два вопроса: 1) Что надо изменить, чтобы при чтении из файла корректно... https://www.cyberforum.ru/ csharp-beginners/ thread2203262.html C# Реализовать алгоритм вычисления значения функции F(n)
Алгоритм вычисления значения функции F(n),где n– натуральное число, задан следующим соотношениями: F(1)=1; F(2)=3; F(n)=F(n-1)-n как реализовать условия F(1)=1; F(2)=3 ?
C# Сумма ряда с точностью x+(1/3)*x^2+(1/5)*x^3+(1/7)*x^4+... значение точности e задать шагом 0.1 (0.1<e< 0.0000000001) значение x с консоли using System; namespace vlozeniyecicly { class MainClass { https://www.cyberforum.ru/ csharp-beginners/ thread2203158.html C# Заполнить двумерный массив случайными неповторяющимися числами https://www.cyberforum.ru/ csharp-beginners/ thread2203121.html
Помогите пожалуйста! Заполнить двумерный массив случайными неповторяющимися числами.
Программирование матричных операций C#
Нужно решить следующие уравнения (пожалуйста): 1)a=(1,4*i+2,2)^2 + j/√(i+2*j) 2)x=(n Σ j=1)*a*a 3)упорядочить нечётные по номеру элементы вектора X(пункт 2) по убыванию абсолютных значений....
C# Деление многочлена на многочлен Точнее деление функции на ее производную. Делаю алгоритм для теоремы Штурмана и проблема в том, что не могу учитывать это отрицательное число или нет. https://www.cyberforum.ru/ csharp-beginners/ thread2203108.html
Эксперт .NET
15349 / 11635 / 3053
Регистрация: 17.09.2011
Сообщений: 19,480
01.03.2018, 11:29 0

Дождаться выполнения Task без Thread.Sleep? - C# - Ответ 12172654

01.03.2018, 11:29. Показов 2341. Ответов 1
Метки (Все метки)

Ответ

Начиная с C# 7.2 можно сделать метод Main асинхронным:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    public static async Task Main()
    {
        Console.WriteLine("1");
        var task = MyMethod();        
        Console.WriteLine("2");
 
        await task;
    }
    
    async static Task MyMethod()
    {
        Console.WriteLine("start");
        await System.Threading.Tasks.Task.Delay(1000);
        Console.WriteLine("end");
    }
Добавлено через 43 секунды
На ранних версиях можно так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    public static void Main()
    {
        Console.WriteLine("1");
        var task = MyMethod();        
        Console.WriteLine("2");
 
        task.Wait();
    }
    
    async static Task MyMethod()
    {
        Console.WriteLine("start");
        await System.Threading.Tasks.Task.Delay(1000);
        Console.WriteLine("end");
    }


Вернуться к обсуждению:
Дождаться выполнения Task без Thread.Sleep? C#
2
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.03.2018, 11:29
Готовые ответы и решения:

Аналог Thread.Sleep в Task
Имеется пример который запускает пару потоков с задержкой. using System; using...

Разница между Thread.Sleep и await Task.Delay
Здравствуйте! Плохо понимаю разницу между использованием: Thread.Sleep(1000); //Здесь код...

Тестирование клиент-серверного приложения без Thread.Sleep ?
Есть пока что небольшой вебсокет-сервер. При покрытии этого сервера NUnit-тестами передо мной...

Получить результат выполнения Task без зависания окна
У меня у окна есть метод Initialize(), который должен запускать поток, внутри которого формируется...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.03.2018, 11:29

Дождаться запуска Task
Необходимо дождаться запуска Task. Делаю так: //Wait for task to start (block) ...

Аналог Thread.Sleep или Task.Delay
Есть ли какой-нибудь аналог функциям Thread.Sleep или Task.Delay ? Мне необходимо сделать задержку...

Как использовать Thread.Sleep(5000), ошибка: "Элемент "Thread" не существует в текущем контексте"
я так понимаю, что Thread.Sleep(5000); это &quot;тормоз&quot; процесса выполенения программы на 5 сек? А...

Thread.Sleep
Итак, есть примерно вот такой консольный код: static void Main(string args) { ...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.