@reaget

Почему TLSharp не возвращает значения?

Здравствуйте!
Использую TLSharp для работы с телеграмом. Хочу проверить зарегистрирован номер или нет.
Код такой:
static async void Start()
        {
            var client = new TelegramClient(apiId, "apiHash");
            await client.ConnectAsync();

            var result = await client.IsPhoneRegisteredAsync(phone);

            Console.WriteLine(result);
            Console.ReadLine();

        }


Да только в result ничего не записывается, почему?
Консоль даже не задерживается.
  • Вопрос задан
  • 398 просмотров
Пригласить эксперта
Ответы на вопрос 1
AlexanderYudakov
@AlexanderYudakov
C#, 1С, Android, TypeScript
Async void это запустили фоновый поток и забыли о нем. Соответственно, основной поток приложения (откуда вызывается Start) завершается мгновенно, не дожидаясь завершения работы Start.
А чтобы дождаться, имеет смысл объявить Start как async Task, а при вызове из Main (или любого другого места, где нет возможности написать await Start()) - использовать синхронный вызов, т.е. Start().Wait()
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы