Articles of async

Limiter les tâches asynchrones

Je voudrais exécuter un tas de tâches asynchrones, avec une limite sur le nombre de tâches en attente d’achèvement à un moment donné. Supposons que vous ayez 1 000 URL et que vous ne souhaitez ouvrir que 50 demandes à la fois. mais dès qu’une demande est terminée, vous ouvrez une connexion à l’URL suivante […]

Async Task.WhenAll avec timeout

Existe-t-il un moyen dans la nouvelle bibliothèque async dotnet 4.5 de définir un délai d’attente pour la méthode Task.WhenAll . Je veux aller chercher plusieurs sources et m’arrêter après cinq secondes et ignorer les sources qui ne sont pas terminées.

HttpClient – la tâche a été annulée – Comment obtenir le message d’erreur exact?

J’ai le code de test suivant. J’ai toujours l’erreur “Tâche a été annulée” après avoir bouclé 316934 ou 361992 fois. Si je ne me trompe pas, il y a deux raisons possibles pour lesquelles la tâche a été annulée a) HttpClient a expiré ou b) trop de tâches dans la queue et certaines tâches ont […]

essayer / attraper des blocs avec async / wait

Je suis en train de creuser dans la fonction asynchrone / wait du noeud 7 et continue de trébucher sur du code comme celui-ci async function main() { try { var quote = await getQuote(); console.log(quote); } catch(error) { console.error(error); } } Cela semble être la seule possibilité de résoudre / rejeter ou de retourner […]

L’appel asynchrone avec wait dans HttpClient ne retourne jamais

J’ai un appel que je fais depuis une application métropolitaine basée sur xaml sur le CP Win8; Cet appel frappe simplement un service Web et renvoie des données JSON. HttpMessageHandler handler = new HttpClientHandler(); HttpClient httpClient = new HttpClient(handler); httpClient.BaseAddress = new Uri(“http://192.168.1.101/api/”); var result = await httpClient.GetStreamAsync(“weeklyplan”); DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(WeeklyPlanData[])); return (WeeklyPlanData[])ser.ReadObject(result); […]

Tentative d’essayer d’obtenir des cookies sans réponse avec HttpClient dans .net 4.5

J’ai le code suivant qui fonctionne correctement. Je n’arrive pas à comprendre comment extraire le cookie de la réponse. Mon objective est que je souhaite pouvoir définir des cookies dans la requête et supprimer les cookies de la réponse. Pensées? private async Task Login(ssortingng username, ssortingng password) { try { ssortingng url = “http://app.agelessemail.com/account/login/”; Uri […]

Comment limiter la quantité d’opérations d’E / S asynchrones simultanées?

// let’s say there is a list of 1000+ URLs ssortingng[] urls = { “http://google.com”, “http://yahoo.com”, … }; // now let’s send HTTP requests to each of these URLs in parallel urls.AsParallel().ForAll(async (url) => { var client = new HttpClient(); var html = await client.GetSsortingngAsync(url); }); Voici le problème, il démarre plus de 1000 requêtes […]

Utilisez async en attente avec Array.map

Vu le code suivant: var arr = [1,2,3,4,5]; var results: number[] = await arr.map(async (item): Promise => { await callAsynchronousOperation(item); return item + 1; }); qui génère l’erreur suivante: TS2322: Le type ‘Promise []’ n’est pas assignable au type ‘nombre []’. Type ‘Promise n’est pas assignable au type’ numéro ‘. Comment puis-je le réparer? Comment […]

attendre des travaux mais appelant task.Result se bloque / deadlocks

J’ai les quatre tests suivants et le dernier se bloque quand je le lance, ma question est la suivante: [Test] public void CheckOnceResultTest() { Assert.IsTrue(CheckStatus().Result); } [Test] public async void CheckOnceAwaitTest() { Assert.IsTrue(await CheckStatus()); } [Test] public async void CheckStatusTwiceAwaitTest() { Assert.IsTrue(await CheckStatus()); Assert.IsTrue(await CheckStatus()); } [Test] public async void CheckStatusTwiceResultTest() { Assert.IsTrue(CheckStatus().Result); // This […]

Quel est l’avantage d’utiliser async avec MVC5?

Quelle est la différence entre: public ActionResult Login(LoginViewModel model, ssortingng returnUrl) { if (ModelState.IsValid) { IdentityResult result = IdentityManager.Authentication.CheckPasswordAndSignIn(AuthenticationManager, model.UserName, model.Password, model.RememberMe); if (result.Success) { return Redirect(“~/home”); } else { AddErrors(result); } } return View(model); } et: [HttpPost] [AllowAnonymous] [ValidateAntiForgeryToken] public async Task Login(LoginViewModel model, ssortingng returnUrl) { if (ModelState.IsValid) { IdentityResult result = await […]