Sobes.tech

Може ли се користити async/await унутар lock-а? Зашто?

243

Kako okruženje za izvršavanje prepoznaje da je asinhrona operacija završena i da treba nastaviti rad?

186

Šta će biti prikazano u konzoli? ```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(); } } ```

183

Šta je struktura? Da li je to tip vrednosti ili referentni tip? Gde se dodeljuje memorija? Koje su granice efikasne upotrebe struktura?

162

Šta su indeksi u bazi podataka? Tipovi indeksa (B-stablo, Hash, Full-text). Klasterizovani vs nekasterizovani indeks. Pokrivajući indeksi.

162

Koje hrpe poznaješ osim glavne (SOH)? Pričaj mi o Large Object Heap i Pinned Object Heap.

156

Šta je konzistentno heširanje (consistent hashing)? Virtuelni shardovi/bucket-ovi?

153

Zadatak sa async/await: kako radi async/await? U šta se razvija? Koja je razlika između Task i ValueTask?

153

Zadatak sa virtuelnim metodama: šta će biti prikazano? Za koju metodu je više tikova i zašto?

143

Ispričaj mi o režimima rada GC: server i desktop. Kada koristiti koji?

139

U čemu je suština koncepta GC generacija (0, 1, 2)? Šta optimizujemo?

137

Šta je ConfigureAwait(false)? Čemu služi? Šta je kontekst sinhronizacije?

132

Ispričaj mi o modifikatorima parametara ref, in, out i njihovim razlikama. Šta je readonly ref i ref readonly?

132

Vam je dodeljen zadatak za pregled koda od kolege Koje probleme vidite u kodu? ```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); } } } } ```

128

Zadatak sa nizovima: šta će biti prikazano? Kako je operator == za nizove preopterećen? Šta je bazen interniranja nizova?

126

Објасните како се додељује меморија на стеку и у хипу. Да ли се вредносни типови увек постављају на стек?

123

Zadatak sa LINQ: šta će biti prikazano? Koji je tip promenljive query? U čemu se razlikuju IEnumerable i IQueryable?

123
/2