.NET Framework 3.5 SP1 Allows managed code to be launched from a network share!

Hurray, its finally fixed!  manage code ‘just works’ from network file share! Now I know that some of you are probably just saying ‘who cares’ or ‘huh?’ but for those of us who have hit this problem, this has been a major deployment headache, and I am happy to say that the end of this…

21

Publication of the PerfView performance analysis tool!

I know it is has been a while since my last posting, but long ago I decided that I would not write just to have something to write about but rather only when I had something I really something useful to say. Well do have something really useful to say. For a long time I…

20

TraceEvent ETW Library published as a NuGet Package

I am happy to report that the TraceEvent Library Nuget Package and the TraceEvent Library Samples Nuget Package have been published at www.nuget.org.   If you look for them be sure to set the filtering to include ‘prerelease’ or you will not see them.    You can see this blog entry for the formal announcement of the…

19

Rich Payload Data in EventSource V4.6.

In a previous blog I talked about the first of three interesting features of the new Version of V4.6 .NET EventSource, naming Activity tracking. In this blog I would like to talk about one of the other two: EventSoruce Rich Data Payloads. Note that .unlike the Activity support, this feature is fully available in the EventSource…

19

Low-Lock Techniques in action: Implementing a Reader-Writer lock

In my article What Every Dev Must Know About Multithreaded Apps I discuss the fundamental principles of using locks correctly.  In that article I strongly encourage the use of reader-writer locks because these locks create the protection you need (insuring that readers and writers don’t conflict), while potentially allowing significantly more concurrency to take place (by…

19

An End-To-End ETW Tracing Example: EventSource and TraceEvent

I have already made a series of blogs about EventSource starting with my tutorial introduction to EventSource.  This gives you enough information to generate events, and using the PerfView tool, lets you look at these events in a viewer.  This is great for a broad variety of ad-hoc scenarios.     However what if you want to go…

16

PerfView Version 1.9 Released to the Web

  Today I have updated the PerfView Download Site, to version 1.9 of the program.   In particular this version has a fix for a symbol resolution on data collected from older (e.g. Win7 OSes) machine that I mentioned in a previous blog post.    It also has a number of other notable features Generalization of Thread…

16

How to use Visual Studio to investigate code generation questions in managed code.

Introduction: What does ‘foreach’ actually do?   It is not uncommon for a new group to want to use manage code to pepper the CLR team with performance questions.  They want to know how expensive ‘foreach’ is, or whether certain methods get inlined or a variety of other questions about the code quality of.  …

16

Why doesn’t my EventSource produce any events?

This is a quick entry to warn about a pitfall that you are likely to run into sooner or later if you build or maintain EventSources.   As I have blogged about, it is very easy to get started with EventSources.   Here is some code that someone might write    And then use it by using by doing…

16

Writing approachable code: Introducing the hyperaddin for Visual Studio!

A few years ago now, several of us on the .NET Runtime team where lamenting how unapproachable the code base was for new developers to the team.    We agreed that more commenting would certainly help the situation, but that alone was not enough, because you also need to FIND the comments WHEN they are relevent…

15