zadanie Task nie zostało wykonane

0

Cześć
dlaczego - poniższy kod - zadanie się nie chce wykonać ?

private void button1_Click(object sender, EventArgs e)
        {// zmieniłem nazwę przycisku na 2 aby mieć w dwóch wersjach do porównań...
            Func<object, long> akcja =
                (object argument) =>
                {
                    // 
                    msgBox2("Akcja: Początek, argument: " + argument.ToString());
                        Thread.Sleep(1000); //opóźnienie - using System.Threading;// JM-4-01-01
                    msgBox2("Akcja: Koniec");
                    //
                    return DateTime.Now.Ticks;
                };
            //
            Task<long> zadanie = new Task<long>(
                akcja,// tojest 
                "zadanie");
            zadanie.Start();
            //
            msgBox2("Akcja została uruchomiona");
            //
            if (
                zadanie.Status != TaskStatus.Running &&
                zadanie.Status != TaskStatus.RanToCompletion
                )
                msgBox2("Zadanie nie zostało uruchomione");
            else
                msgBox2("Wynik: " + zadanie.Result);
            //
            msgBox2("button2_Click: Koniec");
        }
        //
        void msgBox2(string komunikat)
        {
            string taskID = Task.CurrentId.HasValue ? Task.CurrentId.ToString() : "UI";
            //
            //MessageBox.Show("! " + komunikat + " (" + taskID + ")");
            listBox1.Items.Add("! " + komunikat + " (" + taskID + ")");
        }

w załączeniu obrazek

dziękuję za podpowiedź Antonn

0

prawdopodobnie użycie listBox zamiast MsgBox jest niepoprawne - w załączeniu obrazki

0

i moje zapytanie do Kolegów:

jak w listBox poprawnie wyświetlić te wszystkie komunikaty ? po pojedynczym kliknięciu w przycisk ?
bo tego chwilowo nie rozumiem ...

dziękuję za podpowiedź

1 użytkowników online, w tym zalogowanych: 0, gości: 1