zoukankan      html  css  js  c++  java
  • c#基础: 线程的初级用法总结

    启动一个线程的两种方法:                                                                                                                                                                                                                                                                                    

        a、使用无参的方法
          Thread thread1 = new Thread(new ThreadStart("调用的方法名"));
          thread1.Start();
          //  调用此方法的线程上会抛出ThreadAbortException异常
          thread1.About();
        b、使用有参的方法
          Thread thread2 = new Thread(new ParameterizedThreadStart("调用的方法名"));
          // IsBackground  -->  获取或设置一个值,该值指示某个线程是否为后台线程
          thread2.IsBackground = true;
          thread2.Start();
     
    异步线程的使用  :                                                                                                                                                                                                                                                                                                  
        普通线程如果假死,会导致程序阻塞,可以用异步线程解决这个问题,CLR提供了很多方法,如FileStream的BeginRead和EndRead方法,HttpWebRequest的BeginGetResponse方法和EndGetResponse方法,
        如下为HttpWebRequest的使用示例:
        private void TestHttpRequest()
        {
            HttpWebRequest req = WebRequest.Create("http://www.baidu.com") as HttpWebRequest;
            req.BeginGetResponse(new AsyncCallback(ResponseCallback), req);
        }
        private void ResponseCallback(IAsyncResult ia)
        {
            HttpWebRequest req = ia.AsyncState as HttpWebRequest;
            HttpWebResponse res = req.EndGetResponse(ia) as HttpWebResponse;
            Console.WriteLine(res.ContentLength);
        }
        // 调用了Begin后 应该在适当的时候调用End释放资源,否则会造成资源无法释放
  • 相关阅读:
    精益创业和画布实战(2):皇包车和易途8,中文包车游世界
    精益创业和画布实战(2):皇包车和易途8,中文包车游世界
    互联网公司的技术体系
    互联网公司的技术体系
    Android开发——告诉你Adapter应该写在Activity里面还是外面
    Android开发——Android手机屏幕适配方案总结
    09-抽象工厂
    08-工厂方法
    07-简单工厂(不属于设计模式)
    06-开闭原则(OCP)
  • 原文地址:https://www.cnblogs.com/kafeibuku/p/5320329.html
Copyright © 2011-2022 走看看