We have covered some pretty advanced material here, on topics that are widely regarded as considerably more complex than most. Hopefully you are convinced that the Operation framework is a powerful yet reasonably straightforward tool to use. The recent changes to Swift serve to underpin the philosophy behind encapsulating thread-based code in objects that can be manipulated in an intuitive and consistent way.
In this chapter, you have learned the following:
- How to use the Operation framework to simplify concurrent programming
- How to use the Operation framework to manage asynchronous programming tasks
- How to create your own solutions by subclassing the Operation class
- The differences between multithreading and multiprocessing
- The relationships between operations, code blocks, and operation queues
In the next chapter, we will demystify debugging, and look at some advance debugging techniques and tools that...