1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Async Timeout => "Funktion" mit an Methode übergeben

Dieses Thema im Forum ".NET" wurde erstellt von baeri, 8. Juli 2017.

  1. baeri

    baeri Erfahrenes Mitglied

    Hallo,

    wie kann ich einer Methode einen >Befehl< oder eine >Funktion< mit übergeben?

    im Konkreten Fall will ich einen asyncronen Timeout auslösen und dann "irgendetwas" machen... Dieses Irgendetwas möchte ich aber nicht im "AsyncTimeout" definieren sondern mit Übergeben
    => hier Hardcodiert: MessageBox.Show("async Timeout");
    Code (Text):
    1.         public static Task WaitTheTime(int time)
    2.         {
    3.             return Task.Run(() =>
    4.             {
    5.                 Thread.Sleep(time);
    6.             });
    7.         }
    8.  
    9.         public async void AsyncTimout(int time)
    10.         {
    11.             await WaitTheTime(time);
    12.             MessageBox.Show("async Timeout");
    13.         }
    14.  
    15.         private void Button_Click(object sender, RoutedEventArgs e)
    16.         {
    17.             AsyncTimout(5000);
    18.         }
    gibt es die Möglichkeit meinen "Befehl" mit zu übergeben?
    AsyncTimout(5000, MessageBox.Show("async Timeout"));

    => das kommt daher, weil ich natürlich nicht immer eine MessageBox anzeigen will, sondern mal ne Datei löschen oder sonst irgendwas tun...

    Vielen Dank
     
  2. Turri

    Turri Erfahrenes Mitglied

    sheel gefällt das.