Telegram Web Link
👍 Как поднять резюме в топ

В условиях жесткой конкуренции выделиться непросто, но возможно. В статье собрали 9 проверенных способов, которые помогут вам грамотно оформить резюме и выделить свои сильные стороны.

➡️ Поднять себя в топ

🐸Библиотека шарписта
Please open Telegram to view this post
VIEW IN TELEGRAM
👾31
⚡️ Асинхронная обработка в C#

Асинхронные потоки IAsyncEnumerable позволяют эффективно обрабатывать последовательности данных, поступающих с задержками. В целом это положительно влияет на пользовательский опыт и скорость работы приложения

1. Базовый синтаксис:
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;

static async IAsyncEnumerable<int> GenerateSequenceAsync(int count, [EnumeratorCancellation] CancellationToken token = default)
{
for (int i = 0; i < count; i++)
{
// Симулируем асинхронную задержку
await Task.Delay(100, token);
yield return i;
}
}

static async Task ConsumeAsync()
{
await foreach (var item in GenerateSequenceAsync(5))
{
Console.WriteLine($"Получено значение: {item}");
}
}


• Ключевое слово async перед IAsyncEnumerable<T>.

yield return внутри асинхронного метода.

await foreach для потребления.

2. Обработка отмены и ошибок:
using var cts = new CancellationTokenSource(TimeSpan.FromSeconds(1));
try
{
await foreach (var item in GenerateSequenceAsync(10, cts.Token).WithCancellation(cts.Token))
{
Console.WriteLine(item);
}
}
catch (OperationCanceledException)
{
Console.WriteLine("Операция была отменена.");
}


• Передаём CancellationToken через атрибут [EnumeratorCancellation].

• Используем метод расширения .WithCancellation(token) для явной поддержки отмены в await foreach.

3. Советы по применению

• Всегда учитывайте семантику отмены: пробрасывайте CancellationToken до источника потока.

• Избегайте долгих синхронных операций внутри цикла генерации — это сведёт на нет преимущества асинхронности.

• При больших объёмах данных комбинируйте с буферизацией через Channel<T> для сглаживания пиковой нагрузки.

💬 Нужны более продвинутые сценарии по использованию асинхронности? Пишите свои хотелки в комментариях, а мы их обязательно исполним 👇

🐸Библиотека шарписта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍94🔥1😁1
2025/07/09 18:35:36
Back to Top
HTML Embed Code: