I would like to use the async keywords in a project that is created in .net 4.0.
If I go to the nuget.org website and I look for "async", i many results, but mainly I get this:
Visual Studio Async CTP (Version 3, Unofficial) 0.3.0
AsyncAwaitCTP 1.0.0
Which is the differences between both of them?
You want the Microsoft.Bcl.Async package. That's a properly released, non-CTP package that is stable. This also requires VS2012 since an updated compiler is needed to understand async
and await
.
In theory one could use older tools from VS2010 along with the older CTP library, I'd strongly recommend that you don't - it has bugs and the installation itself is a hit-or-miss.
I have written a .NET 4.5 plugin using async
for a .NET 4.0 application, and to my surprise this actually worked!
I think this worked because I have .NET 4.5 installed, which replaced the .NET 4 runtime with an updated one, which is used both for .NET 4.0 and .NET 4.5. Then my plugin was loaded with reflection using Assembly.Load(...)
or similar. I tried both async/await
and Environment.CurrentManagedThreadId
(a .NET 4.5 property), and both worked.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With