Ich hatte mich letztes Jahr auch mal so richtig mit dem Thema beschäftigt, aber das ist meiner Meinung nach die beste Erklärung, wenn man damit noch keine Erfahrungen hat!
ich hab so awaitet auf dieses Video. Ich wollte schon immer programmieren können, und hab die corona Zeit dafür genutzt mir alles anzueignen. Bin mittlerweile auch relativ weit gekommen. Und jetzt hab ich auch endlich eine gute Erklärung für async await gefunden. Vielen Dank :)
Vielen Dank für das sehr gute Video. Du sprichst immer wieder darüber, dass die Aufgaben (Downloads) in einen anderen Thread ausgelagert werden (z.B. 10:25 min). Laut Microsoft Doku verstehe ich es aber so, dass genau das nicht passiert. Ich kann alle Aufgaben parallel erledigen, ohne einen weiteren Thread (Koch) zu benötigen. Oder habe ich etwas falsch verstanden? Liebe Grüße
In der Microsoft Doku zu Asynchrone Programmierung steht aber das man für E/A-gebundene Anforderungen (wie dein Download in deinem Beispiel) async und await ohne Task.Run verwenden sollte und Task.run nur für CPU-gebunden Aufgaben verwenden. Wie stehst Du dazu ?
Hi, prinzipiell ist das richtig aber für dieses Video ist das Beispiel eines Downloads sehr viel einfacher zu verstehen (wegen der Downloadzeit) als eine Methode die die CPU stark belastet. In dem Video geht es ja vor allem darum, zu verstehen, dass man nicht nur sychronen Code sondern auch asynchronen Code programmieren kann. Evtl. macht es Sinn das Thema in einem weiteren Video noch ausführlicher zu behandeln und zu differenzieren :-) Danke für den Hinweis
@@CodingmitJannick Hallo, danke für die Antwort, wie sieht das aus in ASP net Core ? benötigt man da eigentlich Task.run ? async kann Sinn machen, aber auch in Verbindung mit Task.run ?
Aber theoretisch kann ich mit Task.Run() trotzdem was ausführen was parallel gemacht werden soll aber dessen Ergebnis mir egal ist und mit dem ich nichts mehr anfange oder?
Wenn ich nach dem Await in die db speichern möchte erhalte ich folgende Meldung: System.ObjectDisposedException: "Cannot access a disposed object. A common cause of this error is disposing a context that was resolved from dependency injection and then later trying to use the same context instance elsewhere in your application. This may occur if you are calling Dispose() on the context, or wrapping the context in a using statement. If you are using dependency injection, you should let the dependency injection container take care of disposing context instances.
🔥C# Bestseller Bootcamp ➡bit.ly/c-sharp-bootcamp
Danke, endlich mal eine gescheite Erklärung!
Das freut mich!
Ich hatte mich letztes Jahr auch mal so richtig mit dem Thema beschäftigt, aber das ist meiner Meinung nach die beste Erklärung, wenn man damit noch keine Erfahrungen hat!
schau mir bereits einige Videos von dir an und finde die Erklärungen sehr gut
ich hab so awaitet auf dieses Video. Ich wollte schon immer programmieren können, und hab die corona Zeit dafür genutzt mir alles anzueignen. Bin mittlerweile auch relativ weit gekommen. Und jetzt hab ich auch endlich eine gute Erklärung für async await gefunden.
Vielen Dank :)
Das ist doch super :-)
Hab mit Deinen Kursen echt genial schnell C#/Windows Forms gelernt! Hat richtig Spaß gemacht und Deine Inhalte haben einen Top Praxisbezug!👍
Sehr schön!
Der Hammer! Vielen lieben Dank :)
Vielen Dank, wirklich sehr gut erklärt, weiter so 👍
Super erklärt!
Sehr gut erklärt👍. Danke
Vielen Dank für das sehr gute Video. Du sprichst immer wieder darüber, dass die Aufgaben (Downloads) in einen anderen Thread ausgelagert werden (z.B. 10:25 min). Laut Microsoft Doku verstehe ich es aber so, dass genau das nicht passiert. Ich kann alle Aufgaben parallel erledigen, ohne einen weiteren Thread (Koch) zu benötigen. Oder habe ich etwas falsch verstanden? Liebe Grüße
Da meine ich Task nicht Thread. Vielen Dank für den Hinweis! :)
Task.Run() ,wird immer in einem thread aus dem threadpool ausgeführt
In der Microsoft Doku zu Asynchrone Programmierung steht aber das man für E/A-gebundene Anforderungen (wie dein Download in deinem Beispiel) async und await ohne Task.Run verwenden sollte und Task.run nur für CPU-gebunden Aufgaben verwenden. Wie stehst Du dazu ?
Hi, prinzipiell ist das richtig aber für dieses Video ist das Beispiel eines Downloads sehr viel einfacher zu verstehen (wegen der Downloadzeit) als eine Methode die die CPU stark belastet. In dem Video geht es ja vor allem darum, zu verstehen, dass man nicht nur sychronen Code sondern auch asynchronen Code programmieren kann. Evtl. macht es Sinn das Thema in einem weiteren Video noch ausführlicher zu behandeln und zu differenzieren :-) Danke für den Hinweis
@@CodingmitJannick Hallo, danke für die Antwort, wie sieht das aus in ASP net Core ? benötigt man da eigentlich Task.run ? async kann Sinn machen, aber auch in Verbindung mit Task.run ?
Tolles Video. Warum ist die asynchrone Methode beim ersten Start viel langsamer als die syncrone Methode?
Ich liebe await
Dann ist das ja das perfekte Video für dich :-)
Moin Jannick, gibt es demnächst ein Rabatt auf die Videoreihe bei Udemy? LG
Ja sogar genau heute an Halloween 🎃
Könntest du nochmal ein Link schicken? Bzw. hast du kein Instagram? 😄 Dein Content ist top und bin neu in C#
Heisst du auch zufällig Jannick? Der TH-camr vom Programmieren starten heisst auch so ;)
Aber theoretisch kann ich mit Task.Run() trotzdem was ausführen was parallel gemacht werden soll aber dessen Ergebnis mir egal ist und mit dem ich nichts mehr anfange oder?
Richtig :)
Kurze Frage: Warum genau ist es eine schlechte Praxis, void zu benutzen?
Mann ,bitte mehr Angular Tutorial thx
Habe ich vor :-)
Du verwechselst leider parallel mit asynchron.
Ohne await, wurde mir das Video direkt angezeigt.
Gutes Video. Aber 2021 noch windows forms zu verwenden ist etwas.. weired
Wenn ich nach dem Await in die db speichern möchte erhalte ich folgende Meldung:
System.ObjectDisposedException: "Cannot access a disposed object. A common cause of this error is disposing a context that was resolved from dependency injection and then later trying to use the same context instance elsewhere in your application. This may occur if you are calling Dispose() on the context, or wrapping the context in a using statement. If you are using dependency injection, you should let the dependency injection container take care of disposing context instances.