Zakleszczenie wątków: lock (lockA) { lock (lockB) { } }

Zakleszczenie, to taka sytuacja gdzie jeden wątek czeka na zakończenie drugiego wątku, aby otrzymać dostęp do sekcji krytycznej, a ten drugi czeka na zakończenie tego pierwszego.

Przeanalizujmy poniższy kod:

Continue reading →

Przechwytywanie wyjątków w async await

Wyjątek wewnątrz wyrażenia lambda

Jeśli powstanie wyjątek wewnątrz wyrażania lambda, która jest wywoływana wewnątrz nowego obiektu Task, wówczas nie jest możliwe przechwycenie tego wyjątku na zewnątrz, poza tym wyrażeniem lambda. Poniżej przykład takiej sytuacji.

Continue reading →