c# digest
Stay on top of technology
Digests » 130
sponsor
Cross-platform, Actionable, Graphical Git Dashboard
Straightforward, graphic GUI for your Git projects. Free Cross Platform App that works with Mac, Windows and Linux.
.net
Lock free many-producer/single-consumer patterns
Today we're going to implement a very simple producer/consumer pattern: There are many producers who are producing work, and a single consumer who processes the work. The work is all identical, and it is idempotent. That means that doing the work twice is the same as doing it once.
A faster lower allocation stream stack wielded for ALPN/TLS and… HTTP2
So the pipelines library started life as “channels” a repo on github under David Fowlers personal account. By the time I came to look at it, it was up and running, buggy sure, API unbaked but it was functional. To look at how it was and a good kick starter (plus a blog always worth reading) take a look at Marc Gravell’s early post on the subject.
Virtual events in C#: something went wrong
Not so long ago I was working on a new C# diagnostic - V3119 - for the PVS-Studio static code analyzer. The function of this diagnostic is to detect potentially unsafe constructions in the source code of C#, related to the usage of virtual and overridden events. Let's try to sort out, what's wrong with virtual events in C# - the principle of this diagnostic, and why Microsoft doesn't recommend using virtual and overridden events.
Open Source .NET – 2 years later
I think that it’s clear to see that the Community has got on-board with the new Open-Source Microsoft, producing a sustained level of contributions over the last 2 years, lets hope it continues!
What's some C# bad practices that you know and what's the workaround?
A discussion and examples of bad practices in C#.