码迷,mamicode.com
首页 > 编程语言 > 详细

多线程IP获取工具(C#)

时间:2016-03-24 19:54:23      阅读:280      评论:0      收藏:0      [点我收藏+]

标签:

以前帮一个朋友写的“IP采集工具”!

Control.CheckForIllegalCrossThreadCalls = false;

多线程,测试后还比较稳定。

500线程时候,CPU5%左右,内存50多M,1W数据需要6分多钟验证完毕。

 

技术分享

以下是部分代码:

技术分享
 1 public string Getms(string url = "https://www.baidu.com/", string proxy = null)
 2         {
 3             Stopwatch sw = new Stopwatch();
 4             try
 5             {
 6                 HttpHelpers helper = new HttpHelpers();
 7                 HttpItems items = new HttpItems();
 8                 HttpResults hr = new HttpResults();
 9                 items.URL = url;
10                 items.ResultType = ResultType.So;
11                 items.ProxyIp = proxy;
12                 sw.Start();
13                 hr = helper.GetHtml(items);
14                 sw.Stop();
15                 if (hr.StatusCode == HttpStatusCode.OK)
16                 {
17                     return sw.ElapsedMilliseconds.ToString();
18                 }
19                 return "-1";
20             }
21             catch (Exception)
22             {
23                 return "-500";
24             }
25         }
View Code
技术分享
 1 //打开注册表键 
 2             Microsoft.Win32.RegistryKey rk = Microsoft.Win32.Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\Windows\CurrentVersion\Internet Settings", true);
 3             int count = 5;
 4             while (rk.GetValue("ProxyServer") == null && count != 0)
 5             {
 6                 count = count - 1;
 7                 //设置代理IP和端口 
 8                 rk.SetValue("ProxyEnable", 1);
 9                 rk.SetValue("ProxyServer", ip + ":" + port);
10             }
11             API.InternetSetOptionA(0, 39, 0, 0);
View Code

多线程IP获取工具(C#)

标签:

原文地址:http://www.cnblogs.com/inscan/p/5316656.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!