zoukankan      html  css  js  c++  java
  • C#多线程3种创建Thread、Delegate.BeginInvoke、线程池

    1   创建多线程,一般情况有以下几种:(1)通过Thread类   (2)通过Delegate.BeginInvoke方法   (3)线程池

    using System;  

    using System.Collections.Generic;  

    using System.Linq;  

    using System.Text;  

    using System.Timers;  

    using System.Threading;  

    using System.IO;  

    using System.Xml;  

     namespace XMLTest  

     {  

        public class XmlTest  

         {  

             delegatevoid Delegate_Test(int a);  

      

            staticvoid Main(string[] args)  

            {  

                //通过Thread类,其实也是通过ThreadStart委托  

                 Thread t1 = new Thread(new ThreadStart(fun1));  

                 t1.Start();  

                // 通过委托,然后使用BeginInvoke方法  

                 Delegate_Test dt = new Delegate_Test(fun2);  

                 dt.BeginInvoke(10,null,null);  

      

                 //线程池,使用WaitCallback  

                ThreadPool.QueueUserWorkItem(new WaitCallback(fun3),3);  

                Console.Read();  

            }  

             publicstaticvoid fun1()  

             {  

                 while(1>0)  

                 {  

                    Console.WriteLine("来自普通Thread");  

                    Thread.Sleep(800);  

                 }  

            }  

            publicstaticvoid fun2(int a)  

            {  

                 while(a>0)  

                 {  

                     Console.WriteLine("来自beginInvoke");  

                     Thread.Sleep(1500);  

                }  

                 

             }  

      

            staticvoid fun3(Object o)  

            {  

                while (1> 0)  

                {  

                    Console.WriteLine("来自ThreadPool");  

                    Thread.Sleep(2050);  

                }  

             }  

        }  

    }  

     

  • 相关阅读:
    bash实现多进程运行
    Erlang实现进程池
    Apache 和nginx支持跨域访问
    thinkphp 发送邮件
    判断PC和移动端 判断移动端系统
    check 选择框checked属性读取不到
    php使用PDO,并连接SQL
    SQL2005:由于目标机器积极拒绝,无法连接
    frozenui 移动端ui
    纯jquery 滚动评论
  • 原文地址:https://www.cnblogs.com/hucaihao/p/3514790.html
Copyright © 2011-2022 走看看