Improving Performance and Scalability Using Multitasking
This chapter is about allowing multiple actions to occur at the same time to improve performance, scalability, and user productivity for the applications that you build.
In this chapter, we will cover the following topics:
- Understanding processes, threads, and tasks
- Monitoring performance and resource usage
- Running tasks asynchronously
- Synchronizing access to shared resources
Understanding processes, threads, and tasks
A process, with one example being each of the console applications we have created, has resources like memory and threads allocated to it.
A thread executes your code, statement by statement. By default, each process only has one thread, ...