Exemplo n.º 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;
                });
            });
        }
Exemplo n.º 2
0
        private void TestProxyList()
        {
            var proxyNum    = _proxyDataModel.ProxyList.Count;
            var proxyTested = 0;


            Invoke(new Action(() => Enabled = false));
            Task.Factory.StartNew(() =>
            {
                Parallel.ForEach(_proxyDataModel.ProxyList, new ParallelOptions {
                    MaxDegreeOfParallelism = MaxParallelism
                }, proxy =>
                {
                    proxy.PerformTest();
                    ++proxyTested;
                    Invoke(new Action(() => UpdateTestProgress(Convert.ToInt16(proxyTested * 100.0 / proxyNum))));
                });


                Invoke(new Action(() =>
                {
                    _testProgressForm.Close();
                    _testProgressForm = null;
                    Enabled           = true;
                }));
            });
        }
Exemplo n.º 3
0
        private void btnStartTest_Click(object sender, EventArgs e)
        {
            IList <Proxy> proxyList = this.proxyDataModel.ProxyList;

            this.testProgressForm = new TestProgressForm();
            this.testProgressForm.Show();
            this.testProxyList();
        }
Exemplo n.º 4
0
        private void btnStartTest_Click(object sender, EventArgs e)
        {
            var proxyList = _proxyDataModel.ProxyList;

            _testProgressForm = new TestProgressForm();
            _testProgressForm.Show();
            ForThread = new Thread(TestProxyList)
            {
                IsBackground = true
            };
            ForThread.Start();
        }