Preguntas etiquetadas con async-await

Esto cubre el modelo de programación asíncrona compatible con varios lenguajes de programación, utilizando las palabras clave asíncronas y en espera.


3
¿Por qué no se pueden reconocer las pruebas unitarias "async void"?
async void las pruebas unitarias no se pueden ejecutar en Visual Studio 2012: [TestClass] public class MyTestClass { [TestMethod] public async void InvisibleMyTestMethod() { await Task.Delay(1000); Assert.IsTrue(true); } } Si quiero tener una prueba unitaria asincrónica, el método de prueba debe devolver una Tarea: [TestMethod] public async Task VisibleMyTestMethod() { …

5
Función asíncrona con + =
let x = 0; async function test() { x += await 5; console.log('x :', x); } test(); x += 1; console.log('x :', x); Ejecutar fragmento de códigoOcultar resultadosExpandir fragmento Los valores de xlogueado son 1y 5. Mi pregunta es: ¿por qué es el valor de x 5en el segundo registro? …



2
Usando para esperar ... o con iterables sincrónicos
MDN dice que for await...of tiene dos casos de uso: La for await...ofinstrucción crea un ciclo que itera sobre objetos iterables asíncronos, así como en iterables sincronizados, ... Anteriormente estaba al tanto de lo anterior: los iterables asíncronos usando Symbol.asyncIterator. Pero ahora estoy interesado en lo último: iterables sincrónicos. El …

1
¿Cómo puedo poner una función asíncrona en un mapa en Rust?
No puedo manejar funciones asíncronas cuando escribo un enrutador asíncrono para hyper. Este código: 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 


1
Devolver IAsyncEnumerable <T> y NotFound desde Asp.Net Core Controller
¿Cuál es la firma correcta para una acción de controlador que devuelve un IAsyncEnumerable&lt;T&gt;y a NotFoundResultpero que aún se procesa de forma asíncrona? IAsyncEnumerable&lt;T&gt;Usé esta firma y no se compila porque no está a la espera: [HttpGet] public async Task&lt;IActionResult&gt; GetAll(Guid id) { try { return Ok(await repository.GetAll(id)); // GetAll() …


2
Patrón para delegar el comportamiento asíncrono en C #
Estoy tratando de diseñar una clase que exponga la capacidad de agregar problemas de procesamiento asincrónico. En la programación síncrona, esto podría verse así public class ProcessingArgs : EventArgs { public int Result { get; set; } } public class Processor { public event EventHandler&lt;ProcessingArgs&gt; Processing { get; } public …

3
¿Cómo declarar una tarea no iniciada que esperará otra tarea?
¡He hecho esta Prueba de Unidad y no entiendo por qué el "esperar Task.Delay ()" no espera! [TestMethod] public async Task SimpleTest() { bool isOK = false; Task myTask = new Task(async () =&gt; { Console.WriteLine("Task.BeforeDelay"); await Task.Delay(1000); Console.WriteLine("Task.AfterDelay"); isOK = true; Console.WriteLine("Task.Ended"); }); Console.WriteLine("Main.BeforeStart"); myTask.Start(); Console.WriteLine("Main.AfterStart"); await myTask; Console.WriteLine("Main.AfterAwait"); …

1
¿Por qué no espera la sincronización de Task.Run () al contexto de UI Thread / origin?
Pensé que entendía el patrón de espera asíncrona y la Task.Runoperación. Pero me pregunto por qué en el siguiente ejemplo de código awaitno se sincroniza con el hilo de la interfaz de usuario después de regresar de la tarea finalizada. public async Task InitializeAsync() { Console.WriteLine($"Thread: {Thread.CurrentThread.ManagedThreadId}"); // "Thread: 1" …


2
Código asincrónico, variables compartidas, subprocesos de grupo de subprocesos y seguridad de subprocesos
Cuando escribo código asincrónico con async / await, generalmente ConfigureAwait(false)para evitar capturar el contexto, mi código salta de un subproceso de grupo de subprocesos al siguiente después de cada uno await. Esto plantea preocupaciones sobre la seguridad del hilo. ¿Es seguro este código? static async Task Main() { int count …
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.