Concurrency checks are designed to detect issues with multi-threaded applications. The concurrency checks support two modes. The first checks for resource contention issues. This occurs when two threads are, for example, attempting to write output to the same data file or data table, thus forcing your parallel processing to behave in a serial manner. The second mode enables you to better track how threaded events are behaving.
Instrumentation, conversely, is an intrusive form of performance monitoring. Choosing to make an instrumentation run the performance tools triggers the addition of special MSIL commands into your compiled executable. These calls are placed at the start and finish of methods and properties within your executable. Then, as your code executes, the performance engine can gauge how long it takes for specific calls within your application to execute.
Keep in mind that all methods of performance testing affect the underlying performance of the application. It is true that running a performance monitor of any type has built-in overhead that affects your application, but the goal of performance testing isn't to know the exact timing marks of your application, but rather to identify areas that deviate significantly from the norm, and, more important, to establish a baseline from which you can track any significant changes as code is modified.
In this chapter, you have taken a dive into the versions and features of Visual Studio. This chapter was intended to help you explore the new Visual Studio IDE. It demonstrated the powerful features of the IDE, even in the freely available Visual Basic 2010 Express Edition.
You've seen that Visual Studio 2010 is highly customizable and comes in a variety of flavors. As you worked within Visual Studio 2010, you've seen how numerous windows can be hidden, docked, or undocked. They can be layered in tabs and moved both within and beyond the IDE. Visual Studio also contains many tools, including some that extend its core capabilities. Keep in mind that whether you are using Visual Basic 2010 Express Edition or Visual Studio 2010 Ultimate, the core elements associated with compiling your application are the same.
Was this article helpful?