Mert Özen Her Satırda Daha İleri

Blog

Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.

Seriler
19 yazı bulundu #async
C# Async'te Exception: AggregateException ve WhenAll'daki Hatalar
Backend SERİ 05

C# Async'te Exception: AggregateException ve WhenAll'daki Hatalar

Async method'daki exception task'ın içine konur ve await anında orijinal tipiyle fırlar. Parametre kontrolünü çağrı anında fırlatmak, Wait/GetResult/await farkı, WhenAll'da bütün hatalara ve kısmi sonuçlara ulaşmak, iki overload'da farklı çıkan hata sırası, AggregateException.Handle ve gözlenmeyen task exception'ları.

7 Kas 2026 9 dk 5
C# async/await Nasıl Çalışır: State Machine ve Continuation
Backend SERİ 04

C# async/await Nasıl Çalışır: State Machine ve Continuation

await her zaman beklemez: bitmiş bir task'ta kod aynı thread'de devam eder. async kelimesinin aslında ne yaptığı, GetAwaiter/IsCompleted/OnCompleted adımları, elle yazılmış çalışan bir state machine, reflection ile derleyicinin ürettiği tipe bakmak (Debug'da class, Release'de struct), continuation'ın hangi thread'de çalıştığı ve awaitable pattern.

7 Kas 2026 10 dk 4
C# Task ve Task<T>: Sıcak Başlayan Bir Söz
Backend SERİ 03

C# Task ve Task<T>: Sıcak Başlayan Bir Söz

Async method çağrıldığı anda çalışmaya başlar; await bir işi başlatmaz, sonucunu bekler. Task'ın yaşam döngüsü ve Status değerleri, Task.FromResult ve TaskCompletionSource ile task üretmek, aynı task'ı iki kez await etmek, işleri önce başlatıp sonra beklemek ve Task.Factory.StartNew'un Task<Task> tuzağı.

7 Kas 2026 10 dk 6
C# Thread ve ThreadPool: APM ve EAP'den TPL'e Async'in Kısa Tarihi
Backend SERİ 02

C# Thread ve ThreadPool: APM ve EAP'den TPL'e Async'in Kısa Tarihi

Foreground ve background thread farkı, Thread class'ının sonuç ve hata taşıyamaması, 1000 thread ile thread pool'un gerçek ölçümü. Ardından .NET'in async yolculuğu: APM'in Begin/End çifti, EAP'nin Completed event'i, TPL'in Task'ı ve C# 5 ile gelen async/await.

7 Kas 2026 10 dk 5
C# Async Programlama Neden Var: Bloklamak, I/O ve Ölçek
Backend SERİ 01

C# Async Programlama Neden Var: Bloklamak, I/O ve Ölçek

Aynı 100 stok sorgusu async ile bir saniyede, thread'i bekleten kodla 8-9 saniyede bitiyor. I/O-bound ve CPU-bound iş farkı, bloklamanın UI'da ve sunucuda bedeli, thread pool starvation, async'in hız değil kapasite kazandırması ve sahte async tuzağı.

7 Kas 2026 9 dk 11
Dapper ile Async ve Connection Yönetimi: CancellationToken, Pooling ve DI
Veritabanı SERİ 06

Dapper ile Async ve Connection Yönetimi: CancellationToken, Pooling ve DI

Dapper'da CancellationToken'ın neden yalnızca CommandDefinition ile gittiğini, SQLite'ta async'in aslında senkron çalıştığını, connection pooling'i, tek connection paylaşmanın neden patladığını ve ASP.NET Core'da connection factory pattern'ini gerçek çıktılarla görüyoruz.

6 Kas 2026 11 dk 13
JavaScript İleri Asenkron Pattern'lar: Promise.all Ailesi, İptal, Retry ve Timeout
Frontend SERİ 05

JavaScript İleri Asenkron Pattern'lar: Promise.all Ailesi, İptal, Retry ve Timeout

Promise.all, allSettled, any ve race farkını, ES2024'ün Promise.withResolvers'ını, ES2025'in Promise.try'ını, kendi fonksiyonunda AbortSignal desteğini, retry, timeout ve concurrency sınırlamayı kodla görüyoruz.

3 Kas 2026 9 dk 27
Blog Haritası