Skip to content
  • Cursuri
    • Cursuri
    • Workshopuri
    • Training companii
  • Evenimente
  • Mentori
  • Noutăți
  • Podcast
  • Cariere în IT
  • Consiliere gratuită
Menu
  • Cursuri
    • Cursuri
    • Workshopuri
    • Training companii
  • Evenimente
  • Mentori
  • Noutăți
  • Podcast
  • Cariere în IT
  • Consiliere gratuită
Facebook Linkedin Instagram Twitter
  • Contact
Meniu
  • Ofertă educațională
  • Evenimente
  • Mentori
  • Noutăți
  • Podcast
  • Cariere în IT
  • Consiliere gratuită
Menu
  • Ofertă educațională
  • Evenimente
  • Mentori
  • Noutăți
  • Podcast
  • Cariere în IT
  • Consiliere gratuită
  • Despre
  • Comunitatea Wantsome
  • Contact
  • Mentori
  • FAQ
Menu
  • Despre
  • Comunitatea Wantsome
  • Contact
  • Mentori
  • FAQ
  • B2B

Asynchronous and parallel programming concepts using C#

Real hands-on experience workshop about asynchronous and parallel programming concepts using C#
Cere o ofertă

Asynchronous and parallel programming concepts using C#

Completează formularul de mai jos și te vom contacta în cel mult 48 de ore.

Desfășurare

Programare

Durată

24h in total

Experiență tehnică

Avansat

Tell us when, where and how many would like to attend. Also, tell us if you want to make some changes or you are interested in something extra.

Agenda

Asynchronous and parallel programming concepts using C#

Threading and async programming / Intro & concepts [Overview]
• Synchronous vs Asynchronous
• Parallel vs Concurrent
• Threads vs Processes
• Multithreading vs. Multitasking
• Context switching

• Multithreading use-cases
C# Threads
• When to use threads?
• C# start new threads
• Thread priorities
• Thread exceptions
• C# stop threads
Thread pool
• C# Thread Pool Queue
• Limitations
Thread synchronization techniques
• Synchronization
o Simple blocking methods
o Exclusive locking constructs are most common
o Signalling constructs
o Nonblocking synchronization constructs
• Simple blocking methods, Thread state
• Locking constructs: Monitor Class, Mutex Class, Semaphore
o Thread Safety
o Application Servers
o Rich Client Applications and Thread Affinity
• Signaling constructs: AutoResetEvent, ManualResetEvent, CountdownEvent
o Cross process signalling constructs
• Non-bloking techniques: Memory barriers, Volatile, Interlocked
• Data Partitioning
Exercises & Demos
C# Tasks
• Why to use tasks?
• Create & Run a C# tasks
• Generic Task<T>
o Task return types
• Waiting on Tasks
• Task exception handling
o Working with AggregateException
• Task cancellations
• Task continuations
o Continuations and Task<TResult<TResult>>
o Continuations and exceptions
o Scheduling Different Continuation Tasks
o Attaching Child Tasks To A Parent Task
• Task scheduler
• C# Task Factory
• Tasks vs threads
C# Tasks [Exercises]
Async/Await [Intro]
• C# tasks continuations callback hell
• Async/await keywords

• Task continuations and async/await
• Async/await principles
• Async return types
• Awaitables & awaiters
• How is working? – IAsyncStateMachine interface
• Tasks & async/await: exception handling, cancellations, continuations, parallel
executions
Async/Await [Exercices]
Migrate sync code to async
• Web APIs
• Mediator handlers
• NService Bus message handlers
• Discussions
TPL & PLINQ
• Data Parallelism
o Parallel.For
o Parallel.ForEach
o Parallel.For & Parallel.ForEach with local variables
• TPL
o Wait all / Wait any
• Data Flow Overview
• PLINQ Overview
TPL [Exercises]
Concurrent Collections
• IProducerConsumerCollection<T>
• ConcurrentQueue<T>
• ConcurrentStack<T>
• ConcurrentBag<T>
• BlockingCollection<T>
• ConcurrentDictionary<TKey,TValue>
Concurrent Collections [Exercises]

Description

Threading and async programming / Intro & concepts • C# Threads, Thread pool, Thread synchronization techniques overview • C# Tasks Overview • Async/Await – In Depth o C# tasks continuations callback hell o Async/await principles o Async return types, Awaitables & awaiters o How is working? – IAsyncStateMachine interface o Tasks & async/await: exception handling, cancellations, continuations, parallel executions • Migrate sync code to async o Web APIs o Mediator handlers o NService Bus message handlers • TPL – In Depth • Concurrent Collections • Exercises

Key outcomes

In this workshop you will learn about: • Threads & tasks and how we could handle race conditions • Have a look on CPU bound and I/O bound operation • Check what .NET Core provides in order to work in a multi-threaded context o Tasks o Async, Await o Concurrent collections o TPL • In-depth concepts about async-await, TPL • Use concurrent collections • Practice what we've learned in an exercise at the end

Prerequisites & Requirements

• Laptop • .NET Core 3.1 Installed – https://dotnet.microsoft.com/download/dotnet-core/3.1 • Visual Studio Community – https://visualstudio.microsoft.com/downloads/ • Git

Extra info

Homework available for all participants and feedback provided by the trainer on the homework – Trainers: Andrei Scutariu, Mihai Nechifor, Vlad Holbură
Cere o ofertă

Asynchronous and parallel programming concepts using C#

Completează formularul de mai jos și te vom contacta în cel mult 48 de ore.

  • Politica (prietenoasă) privind prelucrarea datelor cu caracter personal
  • Termeni și condiții
  • ANPC
Menu
  • Politica (prietenoasă) privind prelucrarea datelor cu caracter personal
  • Termeni și condiții
  • ANPC

Produse

  • Cursuri pentru adulți
  • Cursuri pentru elevi
  • Workshopuri
  • Evenimente gratuite
  • Training companii
Menu
  • Cursuri pentru adulți
  • Cursuri pentru elevi
  • Workshopuri
  • Evenimente gratuite
  • Training companii

Wantsome

  • Despre
  • Comunitatea Wantsome
  • Contact
  • Mentori
  • FAQ
Menu
  • Despre
  • Comunitatea Wantsome
  • Contact
  • Mentori
  • FAQ

Cele mai noi pe blog

Ce face mai exact un Front-End Developer?

“Sparking Joy” în BA: ce trebuie să știe un Business Analyst

Cum devii programator și ce cursuri IT să faci pentru asta

© 2020 Wantsome. Toate drepturile rezervate.
Facebook-f Linkedin Instagram Twitter Youtube

Mulțumim!

Te vom contacta în cel mult 48 de ore pentru a pune la punct pașii următori. Până atunci, spune și prietenilor despre Wantsome.

exit intent image
office working image

Mai stai un pic​

Ai nevoie de răspunsuri pe care doar un specialist HR ți le poate oferi? Programează acum o ședință gratuită de consiliere!

Programează o consultație gratuită