Thread.Sleep() ohne einfrieren der UI

First off, ich bin ein Anfänger in C# und ich möchte diese:

class2.method_79(null, RoomItem_0, num, num2, 0, false, true, true);
System.Threading.Thread.Sleep(250);
class2.method_79(null, RoomItem_0, num, num4, 0, false, true, true);
System.Threading.Thread.Sleep(300);
class2.method_79(null, RoomItem_0, num, num6, 0, false, true, true);

Aber diese Lösung friert das UI, wie konnte ich das zweite Ereignis auftreten, 250ms nach dem ersten etc ohne einfrieren der UI?

  • Nachschlagen Multithreading.
  • Blockieren Sie nicht den UI-thread. Einen Arbeiter-thread mit einem schlafen. (Beachten Sie, dass Sie auch besser verwenden Sie so etwas wie ein timer). Bitte Lesen Sie diese stackoverflow.com/a/11576659/296526 inklusive link in die Antwort.
  • Man könnte auch die Methode async und verwenden await Task.Delay(250).
  • mögliche Duplikate von Threading in c#
  • Schließlich habe ich benutzt, die asynchrone Methode mit await task.Verzögerung funktioniert perfekt, danke!!!
InformationsquelleAutor user3640047 | 2014-06-10
Schreibe einen Kommentar