Sobes.tech

¿Se puede usar async/await dentro de un lock? ¿Por qué?

269

¿Por qué async void es una mala práctica?

239

¿Qué se mostrará en la consola? ```csharp public class Program { static void Main() { var myClassObj = new MyClass(); var myStructObj = new MyStruct(); MethodA(myClassObj.Num); // MethodB(myStructObj); MethodC(myClassObj); MethodD(myClassObj); Console.WriteLine(myClassObj.Num); // ? Console.WriteLine(myStructObj.Num); // ? } private static void MethodA(int num) { num = num + 1; } private static void MethodB(MyStruct myStruct) { myStruct.Num += 1; } private static void MethodC(MyClass myClass) { myClass.Num += 1; } private static void MethodD(MyClass myClass) { myClass = new MyClass(); } } ```

193

¿Cómo entiende el entorno de ejecución que una operación asíncrona ha finalizado y que debe continuar el trabajo?

192

¿Qué es una estructura? ¿Es un tipo de valor o de referencia? ¿Dónde se asigna la memoria? ¿Cuáles son los límites del uso efectivo de las estructuras?

169

¿Qué son los índices en una base de datos? Tipos de índices (B-tree, Hash, Full-text). Índice clúster vs no clúster. Índices cubiertos.

167

¿Qué montones conoces además del principal (SOH)? Cuéntame sobre el Heap de Objetos Grandes y el Heap de Objetos Anclados.

164

¿Qué es el hash consistente (consistent hashing)? ¿Shards/buckets virtuales?

163

Tarea con async/await: ¿cómo funciona async/await? ¿En qué se desarrolla? ¿Cuál es la diferencia entre Task y ValueTask?

159

¿Qué son las raíces GC? ¿Cuáles hay?

149

Tarea con métodos virtuales: ¿qué se mostrará? ¿Para qué método hay más tics y por qué?

148

¿Qué es ConfigureAwait(false)? ¿Para qué se usa? ¿Qué es el contexto de sincronización?

143

¿En qué consiste la idea de las generaciones GC (0, 1, 2)? ¿Qué estamos optimizando?

143

Cuéntame sobre los modos de funcionamiento de GC: servidor y de escritorio. ¿Cuándo usar cuál?

143

Cuéntame sobre los modificadores de parámetros ref, in, out y sus diferencias. ¿Qué es readonly ref y ref readonly?

135

Se te asigna una tarea de un colega para revisión de código ¿Qué problemas ves en el código? ```csharp namespace SomeProject.Data { public class UserRepository { public Task SaveUser(User user, Dictionary<int,string> shards) { var shardIdx = user.Id % 3; var shardAddress = shards[shardIdx]; using(var shardService = new ShardService(shardAddress)) { return shardService.SaveUserAsync(user); } } } } ```

132

Tarea con cadenas: ¿qué se mostrará? ¿Cómo se sobrecarga el operador == para cadenas? ¿Qué es un pool de interning de cadenas?

130

Explica cómo se asigna memoria en la pila y en el montón. ¿Siempre se colocan los tipos de valor en la pila?

130

¿Cómo implementar tu propio Where sin yield? ¿Qué es yield y cómo funciona en segundo plano?

130
/2