Andrew Arnott

News from my corner of the Visual Studio Project & Build team, programming tips, and solutions to common programming issues.

The cost of context switches

Context switches are not free. But how expensive are they? I wrote a small program to find out, and I’m sharing the program and its results here. I focused on purely context switches (no work is actually performed between context switches). So it’s not a real-world scenario, but it really brings out the hidden costs…. Read more

Update to Visual C++ 2012 Debugger launch extension template

A few days ago I posted about an updated Visual C++ 2012 debugger extensibility project template.  Since then, I realized it had a couple of issues that prevented it from working out of the box.  With those fixed, I also added a demonstration of how to read project properties that aren’t specifically dedicated to debugger… Read more

Enable C++ and Javascript project system tracing

I’ve previously posted on how to enable logging in the C++ project system in Visual Studio 2010.  In Visual Studio 2012 we’ve changed the way the Common Project System (aka “CPS”) emits trace messages so below I introduce an updated xml snippet that works in Visual Studio 2012.  Since CPS is now the project system… Read more

Visual C++ 2012 Debugger Extensibility

Back in Visual C++ 2010 we introduced debugger extensibility so that third party vendors can either add new debugger engines or new ways of launching existing debugger engines for C++ projects.  In Visual C++ 2012 this debugger extensibility has been updated.  Any previous extensions that were compiled against Visual C++ 2010 will have to be… Read more