Пример #1
0
        private void testProxyList()
        {
            int proxyNum    = this.proxyDataModel.ProxyList.Count;
            int proxyTested = 0;

            this.Enabled = false;
            Task.Factory.StartNew(() =>
            {
                Parallel.ForEach(this.proxyDataModel.ProxyList, new ParallelOptions()
                {
                    MaxDegreeOfParallelism = 32
                }, proxy =>
                {
                    proxy.PerformTest();
                    ++proxyTested;
                    this.BeginInvoke((MethodInvoker) delegate {
                        this.updateTestProgress(Convert.ToInt16(proxyTested * 100.0 / proxyNum));
                    });
                });

                this.BeginInvoke((MethodInvoker) delegate {
                    this.testProgressForm.Close();
                    this.testProgressForm = null;
                    this.Enabled          = true;
                });
            });
        }
Пример #2
0
        private void materialRaisedButton4_Click(object sender, EventArgs e)
        {
            IList <Proxy> proxyList = this.proxyDataModel.ProxyList;

            this.testProgressForm = new TestProgressForm();
            this.testProgressForm.Show();
            this.testProxyList();
        }