ACCESSING SHARED DATA AND SIMPLIFYING ASYNCHRONOUS CODE EĞİTİMİ

Ortak veriyi güvenle paylaşın, asenkron kodu sadeleştirin

lock, Monitor, Interlocked, ConcurrentDictionary, async/await, Task birleştirme, iptal ve ilerleme bildirimi iki günde uygulamalı işlenir

C# ortak veri erişimi ve asenkron kod eğitimi; yarış durumu, lock ve Monitor, Interlocked, eşzamanlı koleksiyonlar, async/await, Task birleştirme ve iptal desteği konularını Visual Studio ile işler.

2 gün Orta Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

C#'ta ortak veri erişimi ve asenkron kod

Eğitim, C# uygulamalarında birden çok iş parçacığının paylaştığı veriyi güvenle yönetmeyi ve asenkron kodu sadeleştirmeyi işler. Yarış durumu ve deadlock, lock, Monitor, SemaphoreSlim, Interlocked, ReaderWriterLockSlim, ConcurrentDictionary ve Channel, async/await dönüş tipleri, Task.WhenAll ve WhenAny, CancellationToken, IProgress ve ConfigureAwait konuları Visual Studio ile uygulamalı verilir.

Süre ve Format

2 Gün. Her gün dört modül; 1. gün Ortak Veri ve Senkronizasyon; 2. gün async/await ve Asenkron Kodu Sadeleştirme.

Seviye

Orta Seviye — C# ortak veri erişimi, kilitleme, eşzamanlı koleksiyonlar ve async/await ile asenkron kod sadeleştirme

Öğrenme Metodu

Katılımcılar yarış durumunu bilerek tetikleyen kodlar yazar, ardından kilit ve eşzamanlı koleksiyonlarla düzeltir; async örneklerini adım adım sadeleştirir.

Neden Bu Eğitim?

🔒Güvenli Paylaşım

Yarış durumu ve deadlock'u tanıyıp doğru senkronizasyon aracını seçersiniz.

🧵Sade Asenkron Kod

Callback karmaşasını async/await ile okunur akışa çevirirsiniz.

🛑Kontrollü İptal

CancellationToken ve ilerleme bildirimiyle uzun işleri yönetirsiniz.

Anahtar Konular

c# async awaitc# lockinterlockedconcurrentdictionaryrace conditiondeadlock c#cancellationtokentask whenallc# eşzamanlılıkasenkron programlama c#
“Paylaşılan durum ne kadar azsa, hata o kadar azdır.”

Ön Koşullar

Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri

1
C# temelleri

Sınıf, koleksiyon, LINQ ve delege kavramları bilinmelidir.

2
Thread kavramı

Thread ve Task'a dair temel fikir faydalıdır.

3
Visual Studio

Debug ve breakpoint kullanımı bilinmelidir.

4
Ortam

Visual Studio 2022 (Community yeterli) ve .NET 8 SDK kurulu bir Windows bilgisayar gerekir.

Eğitim İçeriği

Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.

Günün hedefiKatılımcı ortak veriyi doğru senkronizasyon yöntemiyle korur.
Modül 1
Eşzamanlılık Sorunları
  • Yarış durumu (race condition) örneği
  • Bellek görünürlüğü ve volatile
  • Atomik olmayan işlemler: x++
  • Deadlock ve kilit sıralaması
  • Starvation ve livelock
  • Visual Studio Parallel Stacks ve Threads penceresi
Modül 2
Kilitleme Araçları
  • lock ifadesi ve Monitor.Enter/Exit
  • SemaphoreSlim ve sınırlı erişim
  • Mutex ve süreçler arası kilit
  • ReaderWriterLockSlim ile okuma/yazma ayrımı
  • Kilit kapsamını küçük tutma
  • lock(this) ve public nesne anti-pattern'i
Modül 3
Atomik İşlemler
  • Interlocked.Increment, Exchange, CompareExchange
  • Kilitsiz sayaç örneği
  • Immutable (değişmez) veri yapıları
  • System.Collections.Immutable
  • Thread-safe tekil örnek: Lazy<T>
  • ThreadLocal ve AsyncLocal
Modül 4
Eşzamanlı Koleksiyonlar
  • ConcurrentDictionary: GetOrAdd, AddOrUpdate
  • ConcurrentQueue, ConcurrentBag
  • BlockingCollection ile üretici-tüketici
  • System.Threading.Channels
  • Koleksiyon seçim ölçütleri
  • Performans karşılaştırma
Günün hedefiKatılımcı asenkron kodu async/await ile sadeleştirir ve iptal desteği ekler.
Modül 1
async/await Temelleri
  • Task, Task<T> ve ValueTask dönüş tipleri
  • async void tuzağı
  • await'in arka planda yaptığı (durum makinesi)
  • SynchronizationContext ve UI iş parçacığı
  • ConfigureAwait(false) ne zaman
  • Result ve Wait ile deadlock
Modül 2
Task Birleştirme
  • Task.WhenAll ile paralel bekleme
  • Task.WhenAny ve zaman aşımı deseni
  • Task.Run ve CPU yoğun işler
  • Parallel.ForEachAsync
  • İstisnaların AggregateException'dan çıkarılması
  • Sıralı ve paralel çalıştırma farkı
Modül 3
İptal ve İlerleme
  • CancellationTokenSource ve token geçirme
  • Token'ı HttpClient ve EF Core'a iletme
  • OperationCanceledException yönetimi
  • IProgress<T> ile ilerleme bildirimi
  • Zaman aşımı: CancelAfter
  • Kaynak temizliği: IAsyncDisposable
Modül 4
Eski Koddan Dönüşüm
  • APM / EAP desenlerinden Task'a geçiş
  • TaskCompletionSource ile sarma
  • BackgroundWorker'dan async'e
  • Callback zincirini sadeleştirme
  • IAsyncEnumerable ve await foreach
  • Test: async birim testleri

Eğitim Kazanımları

Program sonunda katılımcılar:

✅
Yarış Durumu

Yarış durumunu tespit edip nedenini açıklayabilirsiniz.

✅
Kilit Seçimi

lock, SemaphoreSlim ve ReaderWriterLockSlim arasından uygun olanı seçebilirsiniz.

✅
Atomik İşlem

Interlocked ile kilitsiz sayaçlar yazabilirsiniz.

✅
Eşzamanlı Koleksiyon

ConcurrentDictionary ve Channel ile güvenli veri paylaşımı kurabilirsiniz.

✅
async/await

Durum makinesi mantığını bilerek asenkron kod yazabilirsiniz.

✅
Deadlock Önleme

Result/Wait kaynaklı deadlock'ları önleyebilirsiniz.

✅
Task Birleştirme

WhenAll ve WhenAny ile paralel işleri yönetebilirsiniz.

✅
İptal ve İlerleme

CancellationToken ve IProgress ile kontrollü uzun işler yazabilirsiniz.

Kimler İçin Uygundur?

  • C# bilen ve çok iş parçacıklı
  • asenkron uygulamalarda hata yapmadan çalışmak isteyen .NET geliştiricileri için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
C# bilen ve çok iş parçacıklı, asenkron uygulamalarda hata yapmadan çalışmak isteyen .NET geliştiricileri için uygundur.
Hangi .NET sürümü kullanılıyor?
Örnekler .NET 8 ile hazırlanır; kavramlar .NET Framework 4.x için de geçerlidir, farklar belirtilir.
Visual Studio dışında yapılabilir mi?
Rider veya VS Code ile yapılabilir ancak debug penceresi gösterimleri Visual Studio üzerindendir.
Eğitim UI uygulamalarını da kapsıyor mu?
Evet; WPF/WinForms'ta UI iş parçacığı ve SynchronizationContext davranışı ayrı örnekle gösterilir.
Sertifika verilir mi?
Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir.

Sertifikalandırma

Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.

Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.

Örnek Sertifika d Digital Vizyon AKADEMİ KATILIM SERTİFİKASI Bu sertifika [Katılımcı Adı Soyadı] adlı katılımcının aşağıdaki eğitim programını başarıyla tamamladığını belgeler. Accessing Shared Data and Simplifying Asynchronous Code Eğit Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

Süre2 gün
SeviyeOrta Seviye
FormatOnline / Yüz Yüze / Hibrit
Sertifika✓ Var
Hemen Bilgi Al
İlgili Eğitimler

Bu Eğitimle Birlikte Tercih Edilenler

Programlama Temelleri ve Yaşam DöngüsüKod Analizi ve Yazılım Kalite Eğitimi
Yazılım Geliştirme Eğitimleri

Kod Analizi ve Yazılım Kalite Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

SonarQube, pylint, ESLint, Roslyn analizörleri, karmaşıklık metrikleri ve CI kalite kapısı ile kod analizi eğitimi. Digital Vizyon Akademi.

Detayları Gör →
Programlama Temelleri ve Yaşam DöngüsüLocation Services, Testing, & Debugging Eğitimi
Yazılım Geliştirme Eğitimleri

Location Services, Testing, & Debugging Eğitimi

2 günOrtaOnline / Yüz Yüze / Hibrit

Android ve iOS konum servisleri, izin akışı, geofence, GPS simülasyonu, test ve hata ayıklama. Uygulamalı mobil eğitim Digital Vizyon Akademi'de.

Detayları Gör →
Programlama Temelleri ve Yaşam DöngüsüMicrosoft Visual Studio Eğitimi
Yazılım Geliştirme Eğitimleri

Microsoft Visual Studio Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Visual Studio 2022 ile çözüm yönetimi, editör, NuGet, Git, hata ayıklama, birim testi ve yayınlama. Uygulamalı Digital Vizyon Akademi eğitimi.

Detayları Gör →
Programlama Temelleri ve Yaşam DöngüsüProgramming Strings & Data Structures Eğitimi
Yazılım Geliştirme Eğitimleri

Programming Strings & Data Structures Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

Python ile string işleme, Unicode, regex, liste, sözlük, yığın, kuyruk, bağlı liste ve Büyük O analizi. Digital Vizyon Akademi temel programlama eğitimi.

Detayları Gör →
Programlama Temelleri ve Yaşam DöngüsüR Data Structures Eğitimi
Yazılım Geliştirme Eğitimleri

R Data Structures Eğitimi

2 günTemelOnline / Yüz Yüze / Hibrit

R dilinde vektör, liste, matris, data.frame, tibble, faktör, indeksleme ve apply ailesini uygulamalı öğrenin. Digital Vizyon Akademi R veri yapıları eğitimi.

Detayları Gör →
+90 (501) 369 40 14 WhatsApp [email protected] LinkedIn