zoukankan      html  css  js  c++  java
  • c#一个多线程测试http 接口的程序.

        public void HttpTest(List<StudyNo> lsn,string url)
            {
                try
                {
                    var list_task = new List<Task<string>>();
                    for (int i = 0; i < lsn.Count; i++)
                    {
                        var temp_url = url + lsn[i];
                        var task = Task.Run(async () =>
                        {
                            System.Diagnostics.Debug.Print("temp_url=" + temp_url);
                            SenMessToTextBox("temp_url=" + temp_url);
                            var client = new System.Net.Http.HttpClient();
                            var html = await client.GetStringAsync(temp_url);
                            System.Diagnostics.Debug.Print("temp_url=" + temp_url + " is ok");
                            SenMessToTextBox("temp_url=" + temp_url + " is ok");
                            return lsn[i] + ":" + html;
                        });
    
                        list_task.Add(task);
                    }
    
                    Task.WaitAll(list_task.ToArray());
    
                    foreach (var item in list_task)
                    {
                        System.Diagnostics.Debug.Print(item.Result);
                        Write(item.Result);
                    }
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.Print(ex.Message);
                    SenMessToTextBox(ex.InnerException+ "
    ");
                   // throw;
                }
               
            }
      Object ob = new object();
            /// <summary>
            /// 输出到log文件,格式 报告号:返回结果
            /// </summary>
            /// <param name="text"></param>
            public void Write(string text)
            {
                lock (ob)
                {
                    FileStream fs = new FileStream(@"log.txt", FileMode.Append);
                    StreamWriter sw = new StreamWriter(fs, Encoding.Default);
                    sw.WriteLine(text);
                    sw.Close();
                    fs.Close();
                }
            }
    技术交流qq群:143280841
  • 相关阅读:
    团队项目冲刺第6天
    冲刺阶段第五天
    冲刺阶段前四天总结
    "博客园"用户体验分析
    测试计划
    scrum敏捷开发
    团队开发_软件项目风险管理
    sprint计划会议
    svn 之 svn的两种开发模式
    redis 之 搭建真实集群
  • 原文地址:https://www.cnblogs.com/zuochanzi/p/15491967.html
Copyright © 2011-2022 走看看