
在过去的二十年里,计算机通过增加CPU核的数量而变得更快。然而,如果软件不能正确使用内核,那么拥有更多内核本身并不能使计算机的速度大幅提高。作为软件开发人员,我们应该知道如何编写异步和并行执行的代码,以使我们的应用程序更快、响应更快。
这门课程的全部内容是开发更快速、更灵敏的程序。多线程和并行计算是那些已经有一些编程经验的人的主题,否则,您可能会在理解内容方面遇到困难。总之,本课程包括:
异步编程的理论基础:主要概念、过程、线程等
低级线程API、APM和EAP
任务并行库(Task Parallel Library,TPL)包括启动任务、取消任务、链接任务、等待任务、基于IO的任务、异常处理等
C的异步和等待特性#
同步包括原子性、联锁、监视器(锁)、ReaderWriterLockSlim、信号量、SynchronizationContext和互斥
信号结构,如AutoResetEvent和ManualResetEventSlim、CountdownEvent和Barrier
旋转包括SpinWait、SpinLock和我们自己的UpdateableSpin
ConcurrentCollections包括ImmutableStack、ImmutableQueue、ImmutableList、ImmutableSet、ImmutableDictionary、ConcurrentStack、ConcurrentQueue、ConcurrentBag、BlockingCollection
并行编程包括并行类和PLINQ
注册并开始学习.NET中多线程和并行计算的基础知识。
本课程面向的对象:
任何想学习C中多线程和并行计算的C开发人员#
任何一个C#开发人员都希望手头有一个好的提醒(关于多线程相关的东西)
h264, yuv420p, 1280×720 |ENGLISH, aac, 44100 Hz, 2 channels, s16 | 7h 11 mn | 3.09 GB
Instructor: Engineer Spock
Overcome multithreading and asynchronous programming in C# problems & improve performance by parallel computing in C#
What you’ll learn
Be able to use a full power of TPL (task parallel library) by using Tasks
Understand the low-level of Threads
Understand all the basic concepts such as “Thread”, “Process”; difference between “asynchrony”, “concurrency”, “multithreading”, and “parallel computing”
Use the full power of synchronization constructs such as Monitor (lock), Interlocked, ReaderWriterLockSlim, Semaphore, SynchronizationContext
Use the full power of signaling constructs such as AutoResetEvent and ManualResetEventSlim, CountdownEvent and Barrier, Mutex
Use spinners where appropriate: SpinLock, SpinWait
Understand and use Immutable and Concurrent Collections
Harness the power of parallel computing by using PFX components: Parallel class and PLINQ
Requirements
Good understanding of C#
Description
For the last two decades, computers became faster by increasing the number of CPU cores. However, the fact of having more cores itself doesn’t make a computer drastically faster if those cores are not used by software properly. We, as software developers, should know how to write asynchronous and parallel executing code to make our applications faster and more responsive.
This course is all about developing more responsive and fast programs. Multithreading and Parallel Computing are topics for those who already have some experience in programming, otherwise, you may face difficulties with understanding the content. Anyway, this course covers:
Theoretical foundations of asynchronous programming: main concepts, processes, threads and so on
Low-level Thread API, APM, and EAP
Task Parallel Library (TPL) including starting tasks, canceling tasks, chaining tasks, waiting for tasks, IO-based tasks, exceptions handling and other
Async and Await feature of C#
Synchronization including atomicity, Interlocked, Monitor (lock), ReaderWriterLockSlim, Semaphore, SynchronizationContext, and Mutex
Signaling constructs such as AutoResetEvent and ManualResetEventSlim, CountdownEvent and Barrier
Spinning including SpinWait, SpinLock and our own UpdateableSpin
ConcurrentCollections including ImmutableStack, ImmutableQueue, ImmutableList, Immutable Sets, ImmutableDictionary, ConcurrentStack, ConcurrentQueue, ConcurrentBag, BlockingCollection
Parallel Programming including Parallel class and PLINQ
Enroll and start learning the foundations of multithreading and parallel computing in .NET.
Who this course is for:
Any C# developer who wants to learn about multithreading and parallel computing in C#
Any C# developer who wants to have a good reminder (about multithreading-related stuff) at hand
原创文章,作者:steven,如若转载,请注明出处:https://rr3d.cn/9445.html