Pertanyaan yang diberi tag «async-await»

Ini mencakup model pemrograman asinkron yang didukung oleh berbagai bahasa pemrograman, menggunakan async dan menunggu kata kunci.

1
HttpClient.GetAsync dengan kredensial jaringan
Saat ini saya menggunakan HttpWebRequestuntuk mendapatkan situs web. Saya ingin menggunakan pola await, yang tidak diberikan untuk HttpWebRequests. Saya menemukan kelas HttpClient, yang tampaknya merupakan kelas pekerja Http baru. Saya menggunakan HttpClient.GetAsync(...)untuk menanyakan halaman web saya. Tapi saya kehilangan opsi untuk menambahkan ClientCredentialssuka HttpWebRequest.Credentials. Apakah ada cara untuk memberikan HttpClientinformasi …

5
Haruskah saya khawatir tentang "Metode async ini tidak memiliki operator 'menunggu' dan akan berjalan secara sinkron”
Saya memiliki antarmuka yang mengekspos beberapa metode asinkron. Lebih khusus lagi, ia memiliki metode yang ditentukan yang mengembalikan Tugas atau Tugas <T>. Saya menggunakan kata kunci async / await. Saya sedang dalam proses menerapkan antarmuka ini. Namun, dalam beberapa metode ini, implementasi ini tidak memiliki apa-apa untuk menunggu. Untuk alasan …

3
Apakah itu anti-pola untuk menggunakan async / await di dalam konstruktor Promise () baru?
Saya menggunakan async.eachLimitfungsi untuk mengontrol jumlah operasi maksimum dalam satu waktu. 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); …

1
Await adalah kesalahan kata yang dipesan di dalam fungsi async
Saya berjuang untuk mencari tahu masalah dengan sintaks berikut: 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); } }; …

4
Mengapa HttpContext.Current null setelah menunggu?
Saya memiliki kode WebAPI pengujian berikut, saya tidak menggunakan WebAPI dalam produksi, tetapi saya membuatnya karena diskusi yang saya lakukan tentang pertanyaan ini: Pertanyaan Asinkron WebAPI Bagaimanapun, inilah metode WebAPI yang melanggar: public async Task<string> Get(int id) { var x = HttpContext.Current; if (x == null) { // not thrown …

4
Perbedaan apa pun antara “await Task.Run (); kembali;" dan "return Task.Run ()"?
Apakah ada perbedaan konseptual antara dua bagian kode berikut: async Task TestAsync() { await Task.Run(() => DoSomeWork()); } dan Task TestAsync() { return Task.Run(() => DoSomeWork()); } Apakah kode yang dihasilkan juga berbeda? EDIT: Untuk menghindari kebingungan dengan Task.Run, kasus serupa: async Task TestAsync() { await Task.Delay(1000); } dan Task …
90 c#  async-await 

3
Entity Framework SaveChanges () vs. SaveChangesAsync () dan Find () vs. FindAsync ()
Saya telah mencari perbedaan antara 2 pasang di atas tetapi belum menemukan artikel yang menjelaskan dengan jelas tentang hal itu serta kapan harus menggunakan satu atau lainnya. Jadi apa perbedaan antara SaveChanges()dan SaveChangesAsync()? Dan antara Find()dan FindAsync()? Di sisi server, saat kami menggunakan Asyncmetode, kami juga perlu menambahkan await. Jadi, …

5
Bagaimana cara menunggu daftar tugas secara asynchronous menggunakan LINQ?
Saya memiliki daftar tugas yang saya buat seperti ini: public async Task<IList<Foo>> GetFoosAndDoSomethingAsync() { var foos = await GetFoosAsync(); var tasks = foos.Select(async foo => await DoSomethingAsync(foo)).ToList(); ... } Dengan menggunakan .ToList(), semua tugas harus dimulai. Sekarang saya ingin menunggu penyelesaian mereka dan mengembalikan hasilnya. Ini berfungsi di ...blok di …
88 c#  linq  async-await 

4
Cara menggunakan await dalam satu loop
Saya mencoba membuat aplikasi konsol asinkron yang melakukan beberapa pekerjaan pada koleksi. Saya memiliki satu versi yang menggunakan paralel for loop versi lain yang menggunakan async / await. Saya mengharapkan versi async / await berfungsi mirip dengan versi paralel tetapi dijalankan secara sinkron. Apa yang saya lakukan salah? class Program …
87 c#  .net  async-await 

5
Fungsi async dengan + =
let x = 0; async function test() { x += await 5; console.log('x :', x); } test(); x += 1; console.log('x :', x); Jalankan cuplikan kodeSembunyikan hasilLuaskan cuplikan Nilai-nilai yang xdicatat adalah 1dan 5. Pertanyaan saya adalah: mengapa nilai x 5pada log kedua? Jika testdieksekusi setelah x += 1(karena ini …

4
Cara yang tepat untuk menangani pengecualian di AsyncDispose
Selama beralih ke .NET Core 3 yang baru IAsynsDisposable, saya menemukan masalah berikut. Inti dari masalah: jika DisposeAsyncmelempar pengecualian, pengecualian ini menyembunyikan setiap pengecualian yang dilemparkan ke dalam await using-block. class Program { static async Task Main() { try { await using (var d = new D()) { throw new …

3
Mengapa kelanjutan dari Task.WhenAll dieksekusi secara serempak?
Saya baru saja membuat pengamatan yang aneh tentang Task.WhenAllmetode ini, ketika berjalan di .NET Core 3.0. Saya melewati Task.Delaytugas sederhana sebagai argumen tunggal Task.WhenAll, dan saya berharap bahwa tugas yang dibungkus akan berperilaku identik dengan tugas asli. Tapi ini bukan masalahnya. Kelanjutan dari tugas asli dijalankan secara tidak sinkron (yang …

2
Menggunakan untuk menunggu ... dengan iterables sinkron
MDN mengatakan for await...of memiliki dua kasus penggunaan: The for await...ofpernyataan menciptakan loop iterasi async iterable objek serta pada iterables sync, ... Saya sebelumnya mengetahui yang pertama: async iterables using Symbol.asyncIterator. Tapi saya sekarang tertarik pada yang terakhir: iterables sinkron. Kode berikut ini berulang di atas iterable sinkron - sebuah …

1
Bagaimana saya bisa menempatkan fungsi async ke peta di Rust?
Saya tidak dapat menangani fungsi async saat menulis router async untuk hyper . Kode ini: use std::collections::HashMap; use std::future::Future; type BoxedResult<T> = Result<T, Box<dyn std::error::Error + Send + Sync>>; type CalcFn = Box<dyn Fn(i32, i32) -> dyn Future<Output = BoxedResult<i32>>>; async fn add(a: i32, b: i32) -> BoxedResult<i32> { Ok(a …
11 rust  async-await 


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.