«async-await» 태그된 질문

여기에는 async 및 await 키워드를 사용하여 다양한 프로그래밍 언어에서 지원하는 비동기 프로그래밍 모델이 포함됩니다.

4
try / catch / finally에서 await에 대한 좋은 솔루션입니까?
다음 과 같이 예외 (스택 추적 포함)를 다시 던지기 전에 블록 async에서 메서드 를 호출해야합니다 catch. try { // Do something } catch { // <- Clean things here with async methods throw; } 그러나 불행히도 당신은 또는 블록 await에서 사용할 수 없습니다 . 나는 컴파일러가 당신의 명령이나 그와 비슷한 …

5
"이 비동기 메서드에는 'await'연산자가없고 동 기적으로 실행됩니다."경고에 대해 걱정해야합니까?
일부 비동기 메서드를 노출하는 인터페이스가 있습니다. 보다 구체적으로 Task 또는 Task <T>를 반환하는 메서드가 정의되어 있습니다. async / await 키워드를 사용하고 있습니다. 이 인터페이스를 구현하는 중입니다. 그러나 이러한 방법 중 일부에서는이 구현이 기다릴 것이 없습니다. 따라서 "이 비동기 메서드에는 '대기'연산자가 없으며 동 기적으로 실행됩니다."라는 컴파일러 경고가 표시됩니다. 나는 왜 오류가 …

3
new Promise () 생성자 내부에서 async / await를 사용하는 것이 안티 패턴입니까?
한 async.eachLimit번에 최대 작업 수를 제어 하는 기능을 사용하고 있습니다. const { eachLimit } = require("async"); function myFunction() { return new Promise(async (resolve, reject) => { eachLimit((await getAsyncArray), 500, (item, callback) => { // do other things that use native promises. }, (error) => { if (error) return reject(error); // …

4
“await Task.Run (); 반환;" 그리고“Return Task.Run ()”?
다음 두 코드 사이에 개념적 차이가 있습니까? async Task TestAsync() { await Task.Run(() => DoSomeWork()); } 과 Task TestAsync() { return Task.Run(() => DoSomeWork()); } 생성 된 코드도 다른가요? 편집 : 와 혼동을 피하기 위해 Task.Run유사한 경우 : async Task TestAsync() { await Task.Delay(1000); } 과 Task TestAsync() { return …
90 c#  async-await 

4
대기 후 HttpContext.Current가 null 인 이유는 무엇입니까?
다음 테스트 WebAPI 코드가 있으며 프로덕션에서 WebAPI를 사용하지 않지만이 질문에 대한 토론 때문에 만들었습니다. WebAPI 비동기 질문 어쨌든 문제가되는 WebAPI 메서드는 다음과 같습니다. public async Task<string> Get(int id) { var x = HttpContext.Current; if (x == null) { // not thrown throw new ArgumentException("HttpContext.Current is null"); } await Task.Run(() => …

1
Await는 비동기 함수 내부의 예약어 오류입니다.
다음 구문으로 문제를 파악하는 데 어려움을 겪고 있습니다. export const sendVerificationEmail = async () => (dispatch) => { try { dispatch({ type: EMAIL_FETCHING, payload: true }); await Auth.sendEmailVerification(); dispatch({ type: EMAIL_FETCHING, payload: false })) } catch (error) { dispatch({ type: EMAIL_FETCHING, payload: false }); throw new Error(error); } }; 다음과 …

3
Entity Framework SaveChanges () 대 SaveChangesAsync () 및 Find () 대 FindAsync ()
나는 위의 두 쌍의 차이점을 찾고 있었지만 그것에 대해 명확하게 설명하는 기사와 둘 중 하나를 사용해야 할 때를 찾지 못했습니다. 그래서 차이 무엇 SaveChanges()과 SaveChangesAsync()? 그리고 사이 Find()와 FindAsync()? 서버 측에서 Async메서드 를 사용할 때 await. 따라서 서버 측에서는 비동기 적이라고 생각하지 않습니다. 클라이언트 측 브라우저에서 UI 차단을 방지하는 데만 …

5
LINQ를 사용하여 비동기 적으로 작업 목록을 기다리는 방법은 무엇입니까?
다음과 같이 만든 작업 목록이 있습니다. public async Task<IList<Foo>> GetFoosAndDoSomethingAsync() { var foos = await GetFoosAsync(); var tasks = foos.Select(async foo => await DoSomethingAsync(foo)).ToList(); ... } 를 사용 .ToList()하면 작업이 모두 시작됩니다. 이제 완료를 기다리고 결과를 반환하고 싶습니다. 이것은 위의 ...블록 에서 작동합니다 . var list = new List<Foo>(); foreach …
87 c#  linq  async-await 

4
루프에서 await를 사용하는 방법
컬렉션에서 일부 작업을 수행하는 비동기 콘솔 앱을 만들려고합니다. async / await를 사용하는 다른 버전의 루프를 병렬로 사용하는 버전이 있습니다. 비동기 / 대기 버전이 병렬 버전과 유사하게 작동 할 것으로 예상했지만 동 기적으로 실행됩니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? class Program { static void Main(string[] args) { var worker = new …
87 c#  .net  async-await 

4
비동기 BlockingCollection <T>과 같은 것이 있습니까?
나는 싶습니다 await의 결과에 BlockingCollection&lt;T&gt;.Take()비동기, 그래서 스레드를 차단하지 않습니다. 다음과 같은 것을 찾고 있습니다. var item = await blockingCollection.TakeAsync(); 나는 이것을 할 수 있다는 것을 안다. var item = await Task.Run(() =&gt; blockingCollection.Take()); 그러나 그것은 다른 스레드 (의 ThreadPool)가 대신 차단 되기 때문에 전체 아이디어를 죽 입니다. 대안이 있습니까?

5
비동기 함수 외부에서 await 사용
첫 번째에는 두 번째가 모듈을 실행하거나 종료하도록하는 조건부 반환 매개 변수가 있기 때문에 두 개의 비동기 함수를 함께 연결하려고했습니다. 그러나 사양에서 찾을 수없는 이상한 동작을 발견했습니다. async function isInLobby() { //promise.all([chained methods here]) let exit = false; if (someCondition) exit = true; } 이것은 내 코드 ( 여기 에서 전체 …

9
catch 블록에서 대기
다음 코드가 있습니다. WebClient wc = new WebClient(); string result; try { result = await wc.DownloadStringTaskAsync( new Uri( "http://badurl" ) ); } catch { result = await wc.DownloadStringTaskAsync( new Uri( "http://fallbackurl" ) ); } 기본적으로 URL에서 다운로드하고 싶지만 예외로 실패하면 다른 URL에서 다운로드하고 싶습니다. 물론 두 시간 모두 비동기입니다. 그러나 …

5
Windows 스토어 앱에서 CoreDispatcher를 가져 오는 올바른 방법
Windows 스토어 앱을 구축 중이며 UI 스레드에 게시해야하는 코드가 있습니다. 이를 위해 CoreDispatcher를 검색하여 코드를 게시하는 데 사용하고 싶습니다. 이를 수행하는 몇 가지 방법이있는 것 같습니다. // First way Windows.ApplicationModel.Core.CoreApplication.GetCurrentView().CoreWindow.Dispatcher; // Second way Window.Current.Dispatcher; 어느 것이 맞습니까? 또는 둘 다 동등하다면?

5
새로운 C # await 기능은 무엇을합니까? [닫은]
닫힘 . 이 질문은 더 집중되어야 합니다. 현재 답변을 받고 있지 않습니다. 이 질문을 개선하고 싶으십니까? 이 게시물 을 편집 하여 한 가지 문제에만 집중하도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 이 질문 개선 누구든지이 await기능이 무엇을하는지 설명 할 수 있습니까 ?
83 c#  c#-5.0  async-await 

6
태스크에서 동기식 연속을 방지하려면 어떻게해야합니까?
Task.NET을 기반으로 요청에 대한 보류중인 응답에 대한 기반 API를 제공하는 라이브러리 (소켓 네트워킹) 코드가 TaskCompletionSource&lt;T&gt;있습니다. 그러나 동기식 연속을 방지하는 것이 불가능 해 보인다는 점에서 TPL에는 성가심이 있습니다. 내가 것 처럼 할 수 있도록하는 중입니다 : TaskCompletionSource&lt;T&gt;발신자가을 (를) 첨부하는 것을 허용해서는 안된다고 알리 TaskContinuationOptions.ExecuteSynchronously거나 대신 풀을 사용하여 무시해야 함 을 지정하는 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.