Comments (5)
This could be available as a refactoring operation for any await
expression. In addition some cases may be identified with a diagnostic. Here is my list of [currently one] such case:
When twoEdit: I misunderstood the behavior of continuations when I made this statement.await
expressions appear in sequence, the first one can almost always useConfigureAwait(false)
.
from asyncusageanalyzers.
When two await expressions appear in sequence, the first one can almost always use ConfigureAwait(false).
you mean the second one?
from asyncusageanalyzers.
No, the first one. If all you are going to do is start a new task, why would you need to do so from a particular thread?
from asyncusageanalyzers.
AFAIK, threading and asynchronous programming is not 100% related but I could be wrong. If you do the following under any context which has SynchronizationContext
(e.g. ASP.NET, WPF, etc.), I'm sure you will get into trouble (assuming that GetAsync method will perform asynchronously):
var foo = await _httpClient.GetAsync("http://localhost:5000").ConfigureAwait(false);
// ... other code which is UI related if under WPF or HttpContext related code if under ASP.NET
from asyncusageanalyzers.
More info:
from asyncusageanalyzers.
Related Issues (20)
- New rule proposal: Propagate cancellation tokens HOT 7
- Update IncludeCancellationParameter analyzer to check overloads
- Update IncludeCancellationParameter analyzer to cache context lookups
- Document IncludeCancellationParameter diagnostic
- Support Supression attribute HOT 3
- Update documentation to include [SuppressMessage] examples HOT 2
- Code fixes from AsyncUsageAnalyzers.CodeFixes don't work in Visual Studio
- Don't provide code fixes for Visual Basic in UseConfigureAwaitCodeFixProvider and DontUseThreadSleepCodeUniversalCodeFixProvider
- Suppress async void nag in asserts. HOT 9
- Add special rule for async void eventhandlers. HOT 1
- Await inside usings. HOT 4
- Refactor issue for ignoring a rule HOT 1
- Support Main with async
- Bug: Analyser not raising warnings for local functions not ending with "Async". HOT 1
- ValueTask<long[]> DeleteAsync
- AvoidAsyncSuffix misfires on ValueTask<T> returning methods HOT 1
- Treat types marked with AsyncMethodBuilderAttribute as asynchronous
- Treat methods with awaitable return types as asynchronous
- The non-async method for subclass return a ValueTask report AvoidAsyncSuffix
- New rule proposal: Called methods that are not marked async but return a task should be awaited HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from asyncusageanalyzers.