PROGRAMMING IN C#: MANAGING MULTITHREADING EĞİTİMİ

C# ile eşzamanlılığı güvenle yönetin

Thread, Task, async/await, lock, Monitor, SemaphoreSlim, Interlocked, ConcurrentDictionary, PLINQ ve deadlock analizi.

Programming in C#: Managing Multithreading eğitimi, .NET’te eşzamanlı ve paralel programlamayı ele alır. Thread ve ThreadPool, Task Parallel Library, async/await, iptal ve ilerleme raporlama, lock ve Monitor, Mutex, SemaphoreSlim, ReaderWriterLockSlim, Interl…

3 gün İleri Seviye Online / Yüz Yüze / Hibrit Sertifikalı

Eğitim Hakkında

C# çoklu iş parçacığı yönetimi: Thread, ThreadPool, Task, async/await, senkronizasyon, PLINQ ve eşzamanlı koleksiyonlar

Programming in C#: Managing Multithreading eğitimi, .NET’te eşzamanlı ve paralel programlamayı ele alır. Thread ve ThreadPool, Task Parallel Library, async/await, iptal ve ilerleme raporlama, lock ve Monitor, Mutex, SemaphoreSlim, ReaderWriterLockSlim, Interlocked, volatile, eşzamanlı koleksiyonlar, Parallel.For, PLINQ, deadlock ve yarış durumu tespiti ile hata ayıklama uygulamalı işlenir.

Süre ve Format

3 Gün. Her gün dört modül; Thread ve Task Temelleri; Senkronizasyon ve Güvenli Paylaşım; Tasarım Kalıpları ve Teşhis.

Seviye

İleri Seviye — C# çoklu iş parçacığı yönetimi: Thread, ThreadPool, Task, async/await, senkronizasyon, PLINQ ve eşzamanlı koleksiyonlar

Öğrenme Metodu

Her modül Visual Studio 2022, .NET 8 SDK ve Concurrency Visualizer / dotnet-trace üzerinde canlı kodlama, hata ayıklama ve mini görevlerle işlenir; katılımcılar kendi bilgisayarında örnekleri yeniden üretir.

Neden Bu Eğitim?

🧑‍💻Uygulamalı Lab

Her gün Visual Studio 2022, .NET 8 SDK ve Concurrency Visualizer / dotnet-trace üzerinde kod yazılır; konular sunum yerine çalışan örneklerle pekiştirilir.

🎯Konuya Özgü İçerik

Program Thread ve ThreadPool ile başlayıp Performans ve Test ile biter; gerçek projelerde karşılaşılan durumlara odaklanır.

📈Doğrudan Projeye

Edinilen teknikler c# çoklu iş parçacığı yönetimi: Thread, ThreadPool, Task, async/await, senkronizasyon, PLINQ ve eşzamanlı koleksiyonlar alanındaki günlük işlerde hemen kullanılabilecek şekilde kurgulanır.

Anahtar Konular

c# multithreadingc# threadtask parallel libraryasync awaitlock monitorsemaphoreslimplinqconcurrentdictionarydeadlockparallel programlama c#
“Eşzamanlılık hataları nadir olur ama tam üretimde ortaya çıkar; bu yüzden tasarımla önlenmelidir.”

Ön Koşullar

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

1
C# Orta Düzey

Delegate, lambda ve LINQ konularında rahat olmak gerekir.

2
İşletim Sistemi

Süreç ve iş parçacığı kavramlarına aşinalık faydalıdır.

3
Çalışma Ortamı

Uygulamalar için Visual Studio 2022, .NET 8 SDK ve Concurrency Visualizer / dotnet-trace kurulu veya erişilebilir bir bilgisayar önerilir.

4
Aktif Katılım

Her gün laboratuvar çalışması yapıldığından kod yazmaya ve soru sormaya hazır gelinmesi beklenir.

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ı iş parçacığı ve Task yapılarını doğru kullanır.
Modül 1
Thread ve ThreadPool
  • Thread oluşturma, Start, Join ve IsBackground
  • ThreadPool.QueueUserWorkItem ve havuz boyutu
  • ThreadStatic ve ThreadLocal<T>
  • Thread önceliği ve uyku
  • Süreç ve iş parçacığı kaynak maliyeti
  • Thread kullanımı ne zaman doğru değildir
Modül 2
Task Parallel Library
  • Task.Run, Task.Factory.StartNew farkı
  • ContinueWith ve görev zinciri
  • Task.WhenAll, WhenAny, WaitAll
  • AggregateException ve hata yönetimi
  • TaskCreationOptions ve TaskScheduler
  • CancellationTokenSource ile iptal
Modül 3
async ve await
  • async/await derleyici dönüşümü
  • SynchronizationContext ve ConfigureAwait
  • ValueTask ve ne zaman kullanılır
  • async void riskleri
  • Progress<T> ile ilerleme
  • Async deadlock örneği ve çözümü
Modül 4
Paralel Döngüler ve PLINQ
  • Parallel.For ve Parallel.ForEach
  • ParallelOptions ve MaxDegreeOfParallelism
  • PLINQ: AsParallel, AsOrdered, WithDegreeOfParallelism
  • Bölümleme (Partitioner)
  • Paralelliğin ne zaman yavaşlattığı
  • Kaynakların toplanması ve thread-local aggregate
Günün hedefiKatılımcı paylaşılan durumu kilitlerle ve kilitsiz tekniklerle güvenli yönetir.
Modül 1
lock ve Monitor
  • lock ifadesi ve Monitor.Enter / Exit
  • Kilit nesnesi seçimi ve lock(this) tehlikesi
  • Monitor.Wait / Pulse
  • Deadlock oluşumu ve önleme
  • Lock sırası kuralı
  • Yeni Lock türü (.NET 9) giriş
Modül 2
Senkronizasyon Primitifleri
  • Mutex ve adlandırılmış mutex ile süreçler arası kilit
  • SemaphoreSlim ve WaitAsync
  • ReaderWriterLockSlim
  • ManualResetEventSlim, AutoResetEvent
  • CountdownEvent ve Barrier
  • SpinLock ve SpinWait
Modül 3
Atomik İşlemler
  • Interlocked.Increment, Exchange, CompareExchange
  • volatile ve bellek bariyerleri
  • Veri yarışı (data race) ve görünürlük
  • Immutable veri ile paylaşım azaltma
  • Lock-free yapı örnekleri
  • Double-checked locking ve Lazy<T>
Modül 4
Eşzamanlı Koleksiyonlar
  • ConcurrentDictionary: GetOrAdd, AddOrUpdate
  • ConcurrentQueue, ConcurrentBag, ConcurrentStack
  • BlockingCollection ile üretici-tüketici
  • Channel<T> kullanımı
  • ImmutableCollections
  • Thread-safe olmayan koleksiyon hataları
Günün hedefiKatılımcı eşzamanlı sorunları teşhis eder ve doğru kalıpları seçer.
Modül 1
Eşzamanlılık Kalıpları
  • Üretici-tüketici ve iş kuyruğu
  • Pipeline ve Dataflow (TPL Dataflow)
  • Fan-out / fan-in
  • Rate limiting ve SemaphoreSlim
  • Periodik görevler: PeriodicTimer
  • Arka plan servisi (BackgroundService)
Modül 2
UI ve Eşzamanlılık
  • UI thread ve Dispatcher / Control.Invoke
  • async olay işleyicileri
  • Uzun işlemler ve iptal edilebilirlik
  • İlerleme ve arayüz yanıtlayıcılığı
  • SynchronizationContext.Post
  • Arayüz güncellemelerinde sık hatalar
Modül 3
Hata Ayıklama
  • Parallel Stacks ve Threads penceresi
  • Concurrency Visualizer
  • dotnet-dump ve deadlock tespiti
  • Yarış durumu yeniden üretme teknikleri
  • Unobserved task exception
  • Loglama ve ilişkilendirme
Modül 4
Performans ve Test
  • BenchmarkDotNet ile paralel kazanç ölçümü
  • Amdahl yasası ve ölçekleme sınırları
  • Thread havuzu açlığı (starvation)
  • Eşzamanlı kodun birim testi
  • Kapanış projesi: paralel dosya işleyici
  • Sınav tarzı örnek sorular

Eğitim Kazanımları

Program sonunda katılımcılar:

🧩
Thread ve ThreadPool

Thread ve ThreadPool kapsamında Thread oluşturma, Start, Join ve IsBackground gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

⚙️
Task Parallel Library

Task Parallel Library kapsamında Task.Run, Task.Factory.StartNew farkı gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🧪
Paralel Döngüler ve PLINQ

Paralel Döngüler ve PLINQ kapsamında Parallel.For ve Parallel.ForEach gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🔍
lock ve Monitor

lock ve Monitor kapsamında lock ifadesi ve Monitor.Enter / Exit gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🚀
Atomik İşlemler

Atomik İşlemler kapsamında Interlocked.Increment, Exchange, CompareExchange gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🛠️
Eşzamanlı Koleksiyonlar

Eşzamanlı Koleksiyonlar kapsamında ConcurrentDictionary: GetOrAdd, AddOrUpdate gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

📦
UI ve Eşzamanlılık

UI ve Eşzamanlılık kapsamında UI thread ve Dispatcher / Control.Invoke gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

🔐
Hata Ayıklama

Hata Ayıklama kapsamında Parallel Stacks ve Threads penceresi gibi yapıları kendi projenizde doğrudan uygulayabilirsiniz.

Kimler İçin Uygundur?

  • Çok iş parçacıklı
  • asenkron uygulamalar geliştiren C# geliştiricileri ile performans odaklı mühendisler için uygundur

Sıkça Sorulan Sorular

Bu eğitim kimler için uygundur?
Çok iş parçacıklı ve asenkron uygulamalar geliştiren C# geliştiricileri ile performans odaklı mühendisler için uygundur.
Programming in C#: Managing Multithreading eğitiminde hangi araçlar kullanılır?
Uygulamalar Visual Studio 2022, .NET 8 SDK ve Concurrency Visualizer / dotnet-trace üzerinde yürütülür; her modülün sonunda çalışan bir örnek veya mini proje tamamlanır.
Eğitim kaç gün sürer ve nasıl işlenir?
Program 3 gündür ve her gün dört modülden oluşur; ilk gün thread ve Task Temelleri ile başlanır, son gün tasarım Kalıpları ve Teşhis ile tamamlanır.
Ön bilgi gerekir mi?
Delegate, lambda ve LINQ konularında rahat olmak gerekir. Süreç ve iş parçacığı kavramlarına aşinalık faydalıdır.
Eğitim sonunda sertifika alınır mı?
Eğitimi tamamlayan katılımcılara Digital Vizyon Akademi Katılım ve Başarı Sertifikası verilir; üçüncü taraf bir kurumun sınavı söz konusuysa sınav başvurusu ve ücreti ilgili kuruma aittir.

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. Programming in C#: Managing Multithreading Eğitimi Sertifika Kodu DV-2026XX00 Tarih 27.10.2026 Yetkili İmza DV AKADEMİ

Eğitim Bilgileri

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

Bu Eğitimle Birlikte Tercih Edilenler

C# ve .NETASP.NET Web API ile RESTful Servis Geliştirme Eğitimi
Yazılım Geliştirme Eğitimleri

ASP.NET Web API ile RESTful Servis Geliştirme Eğitimi

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

ASP.NET Web API ile RESTful Servis eğitimi: RESTful Tasarım İlkeleri ve Gelişmiş Servis Özellikleri uygulamalı lab çalışmalarıyla işlenir. DVA katılım sertifika

Detayları Gör →
C# ve .NETBuilding Web Applications with ASP.NET MVC Eğitimi
Yazılım Geliştirme Eğitimleri

Building Web Applications with ASP.NET MVC Eğitimi

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

ASP.NET MVC ile Web Uygulaması Geliştirme eğitimi: 2 gün, uygulamalı kod egzersizleri ve DVA katılım sertifikası ile konuyu uçtan uca öğrenin.

Detayları Gör →
C# ve .NETC# Eğitimi
Yazılım Geliştirme Eğitimleri

C# Eğitimi

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

C# Programlama eğitimi: Dil Temelleri ve Koleksiyonlar, LINQ ve Uygulama konularını uygulamalı örneklerle öğrenin. DVA katılım sertifikalı program.

Detayları Gör →
C# ve .NETC# for Automation Test Engineers Eğitimi
Yazılım Geliştirme Eğitimleri

C# for Automation Test Engineers Eğitimi

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

C# for Automation Test Engineers eğitimi: Test Otomasyonu için C# ve UI, API ve CI Otomasyonu konularını uygulamalı örneklerle öğrenin. DVA katılım sertifikalı

Detayları Gör →
C# ve .NETC# ile Entity Framework ve LINQ Eğitimi
Yazılım Geliştirme Eğitimleri

C# ile Entity Framework ve LINQ Eğitimi

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

C# ile Entity Framework ve LINQ eğitimi: 2 gün, uygulamalı kod egzersizleri ve DVA katılım sertifikası ile konuyu uçtan uca öğrenin.

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