C#/.Net на практике
关闭频道
C# .Net тесты @notxxx1 - по всем вопросам https://t.me/+B0j7cCEldMFlOTQy - ссылка на канал
显示更多1 965
订阅者
无数据24 小时
-37 天
-730 天
帖子存档
1 965
Что выведет код?
using System;
class Program
{
static void Main()
{
int x = 10;
Console.WriteLine(x++ + ++x);
}
}
Правильный ответ: 22
Почему: выражение считается слева направо. Сначала x++ возвращает 10, но потом увеличивает x до 11. Затем ++x сначала увеличивает x до 12, потом возвращает 12. В итоге 10 + 12 = 22.1 965
Repost from C# (C Sharp) programming
В какой строке возникнет первое исключение?
1 965
✔️ Задача C# и ASP.NET Core
В проде под нагрузкой API начинает подвисать, медиана ответа растёт с 40 мс до 400 мс, а иногда и выше.
Логи показывают, что в горячем месте встречается такой
public async Task<User> GetUserAsync(int id)
{
using var conn = new SqlConnection(_conn);
conn.Open(); // 👈 синхронный блокирующий вызов
var cmd = conn.CreateCommand();
cmd.CommandText = "SELECT * FROM Users WHERE Id = @id";
cmd.Parameters.AddWithValue("@id", id);
using var reader = cmd.ExecuteReader(); // 👈 тоже блокировка
if (await reader.ReadAsync())
return Map(reader);
return null;
}
Под нагрузкой резко растёт:
- очередь ThreadPool
- количество заблокированных потоков
- p99 latency
Какой вариант исправления правильный?
1. Заменить ExecuteReader на ExecuteReaderAsync, но оставить conn.Open() как есть.
2. Вынести всё выполнение в Task.Run и пусть код работает на отдельных потоках.
3. Переписать весь путь на асинхронный: использовать OpenAsync, ExecuteReaderAsync и полностью убрать sync-over-async.
Как думаешь, какой вариант правильный?1 965
❓ Какая из строк (помечены комментариями) вызовет ошибку компиляции?
interface IList
{
int Count { get; set; }
}
interface ICounter
{
void Count(int i);
}
interface IListCounter:IList, ICounter { }
class C
{
void Test(IListCounter x) //1
{
x.Count(1); //2
x.Count = 1; //3
}
}
public class Program
{
private static void Main(string[] args)
{
}
}1 965
Какое исключение выдается, если протокол, поддерживаемый префиксом URI, недействителен?
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
