C# Version 5.0 | |
Released August, 2012 | |
C# version 5.0, released with Visual Studio 2012, was a focused version of the language. Nearly all of the effort for that version went into another groundbreaking language concept: the async and await model for asynchronous programming. Here's the major features list: | |
Asynchronous members | |
Caller info attributes | |
Code Project: Caller Info Attributes in C# 5.0 | |
The caller info attribute lets you easily retrieve information about the context in which you're running without resorting to a ton of boilerplate reflection code. It has many uses in diagnostics and logging tasks. | |
But async and await are the real stars of this release. When these features came out in 2012, C# changed the game again by baking asynchrony into the language as a first-class participant. If you've ever dealt with long running operations and the implementation of webs of callbacks, you probably loved this language feature. |