Asynkron programmering i C#
Eftersom dagens datorer har flera processorer är förståelse för asynkron programmering, eller parallellprogrammering, viktigt för att kunna skriva snabb och effektiv kod. Den här kursen är framtagen för de som vill lyfta sina applikationer till nästa nivå och fördjupa sig inom parallellprogrammering.
Utbildningen är en blandning av teori och praktiska övningar.
Målgrupp
Målgruppen är erfarna C#-utvecklare som vill fördjupa sig inom parallell-programmering och asynkron programmering i C#.
Mål
Efter kursen slut har du en förståelse för hur du använder parallellprogrammering för att optimera dina applikationers effektivitet och skalbarhet.
Bakgrundskunskaper
För att till fullo kunna ta till sig kursinnehållet bör du ha minst ett års erfarenhet som C#-utvecklare. Du bör behärska begrepp i C# som generics, lambdas och LINQ.
Språk
Utbildningsmaterialet är skrivet på engelska. Utbildningen kan genomföras antingen på svenska eller engelska.
Kurslängd
Kursen genomförs under två dagar.
Innehåll
Vi går igenom:
- Synchronous vs. Asynchronous programming
- Processes
- Threads
- The cost of creating threads
- Worker and I/O Threads
- When not to use the thread pool
- Creating tasks
- Returning data from a task
- Using Tasks or Threads?
Error Handling in Asynchronous Programming
- Exceptions in threads
- Exceptions in tasks
- Cancellation Token Source
- Tokens
Async – Await
- Async methods
- Async state machine
- The await keyword
- Returning data from async methods
- Async all the way
- Async lambdas
- Optimizing async/await
- .GetAwaiter().GetResult()
- WaitAsync
Async Error Handling
Synchronization contexts
- SynchronizationContext vs. TaskScheduler
- Capturing the context
- Tasks vs ValueTasks
Mer information
För mer information kontakta Åsa Detterfelt, 070-659 58 12, alternativt maila asa.detterfelt@mindroad.se.
Kurstillfällen:
Stockholm 22 - 24/9
Göteborg 13 - 14/10
Linköping 10 - 12/3