/// <summary> /// 执行返回结果 /// </summary> /// <param name="dgvrowid"> 线程号行号</param> /// <param name="number">循环总次数</param> private void PingTask(int dgvrowid, int number, string url, int time,string ip) { //获取开始时间 DateTime st = DateTime.Now; //开始时间 this.BeginInvoke(_upDateStateDelegate, st.ToString("hh:mm:ss tt zz"), dgvrowid, "开始时间"); for (int i = 0; i < number; i++) { //获取线程开始时间 DateTime stThread = DateTime.Now; try { HttpHelps hh = new HttpHelps(); hh.SetWebProxy(ip); //自动访问百度,主要是延长时间 // string strdate = hh.GetHttpRequestStringByNUll_Get(url, null); string strdate = Test(ip); strdate = HanlderString(strdate); //当前循环次数 this.BeginInvoke(_upDateStateDelegate, strdate, dgvrowid, "返回结果"); //当前循环次数 this.BeginInvoke(_upDateStateDelegate, ip, dgvrowid, "ip"); //获取结束时间 DateTime et = DateTime.Now; //结束时间 this.BeginInvoke(_upDateStateDelegate, et.ToString("hh:mm:ss tt zz"), dgvrowid, "结束时间"); //总用时(毫秒) this.BeginInvoke(_upDateStateDelegate, ExecDateDiff(st, et), dgvrowid, "总用时(毫秒)"); do { if (stThread.AddSeconds(time) <= DateTime.Now) { break; } } while (true); } catch { } } }