Checking for memory leaks with unit tests
Memory leaks are by no means unique to multithreaded code, but they certainly can happen. The more code that is executing in your application, the more likely it is that some objects are going to leak. The company that makes the popular .NET tools, ReSharper and Rider, also makes a tool called dotMemory for analyzing memory leaks. While these tools are not free, JetBrains does offer its memory unit testing tool for free. It’s called dotMemory Unit.
In this section, we will create a dotMemory Unit test to check whether we are leaking one of our objects. You can run these dotMemory Unit tests for free with .NET on the command line by downloading the standalone test runner here: https://www.jetbrains.com/dotmemory/unit/.
Note
For more information about using the free tooling, you can read about it here: https://www.jetbrains.com/help/dotmemory-unit/Using_dotMemory_Unit_Standalone_Runner.html. JetBrains also has integration for...