private async void Btn_Avvia_Click(object sender, RoutedEventArgs e)
        {
            cts = new CancellationTokenSource();
            //WorkerAsync wrk = new WorkerAsync(10, 1000, cts);

            IProgress <int>     progress = new Progress <int>(UpdateUI);
            WorkerProgressAsync wrk      = new WorkerProgressAsync(sem, 10, 1000, cts, progress);
            //WorkerProgress wrk = new WorkerProgress(10,1000,cts,progress);
            await wrk.Start();

            MessageBox.Show("Mi dimentico del Thread secondario e non attendo il thread secondario per visualizzare questo messaggio");
        }
Exemple #2
0
        private async void btn_Avvia_Click(object sender, RoutedEventArgs e)
        {
            btn_Fine.IsEnabled = true;
            cts = new CancellationTokenSource();
            Semaphore sem = new Semaphore(2, 2);

            IProgress <int>     progress = new Progress <int>(UpdateUI);
            WorkerProgressAsync wrk      = new WorkerProgressAsync(10, 1000, cts, progress, sem);

            //WorkerProgress wrk = new WorkerProgress(10, 1000, cts, progress);
            await wrk.Start();

            MessageBox.Show("Mi dimentico del thread secondario e non lo attendo per visualizzare questo messaggio");
        }