当前位置: 首页 > news >正文

优秀个人网站案例音乐网站开发结语

优秀个人网站案例,音乐网站开发结语,游戏网站logo制作,个性化网站模板文章目录 C# 多线程进程与线程无参数的子线程带参数的子线程运行结果 销毁线程 Abort()运行结果 ThreadPool和Task运行结果 C# 多线程 进程与线程 进程#xff1a;进程就是一个应用程序#xff0c;对电脑的各种资源的占用 线程#xff1a;线程是程序执行的最小单位#… 文章目录 C# 多线程进程与线程无参数的子线程带参数的子线程运行结果 销毁线程 Abort()运行结果 ThreadPool和Task运行结果 C# 多线程 进程与线程 进程进程就是一个应用程序对电脑的各种资源的占用 线程线程是程序执行的最小单位任何操作都是线程完成的线程依托进程存在的一个进程可以有多个线程 无参数的子线程 public static void ChildThread1(){Console.WriteLine(Child thread1 is starts);}带参数的子线程 ChildThread2是带参数的子线程所以要使用ParameterizedThreadStart类型的委托来指定子线程 如果使用的是不带参数的委托不能使用带参数的Start方法运行线程否则系统会抛出异常。 但使用带参数的委托可以使用thread.Start()来运行线程这时所传递的参数值为null。 特别注意ParameterizedThreadStart委托的参数类型必须是object的 using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks;namespace ConsoleApp2 {class Test{public static void ChildThread1(){Console.WriteLine(Child thread1 is starts);}//注意ParameterizedThreadStart委托的参数类型必须是object的public static void ChildThread2(object obj){Console.WriteLine(Child thread2 is starts,the parameter is {0}, obj);}public static void Main(){ThreadStart thread1 new ThreadStart(ChildThread1); //通过ThreadStart委托指定子线程的方法ParameterizedThreadStart thread2 new ParameterizedThreadStart(ChildThread2); //有参的委托Console.WriteLine(MainThreadCreating the child thread1);Console.WriteLine(MainThreadCreating the child thread2);Thread childThread1 new Thread(thread1); //创建子线程1Thread childThread2 new Thread(thread2);//创建子线程2childThread1.Start(); //运行子线程1childThread2.Start(子线程2的参数);//运行子线程2传递参数//如果使用的是不带参数的委托不能使用带参数的Start方法运行线程否则系统会抛出异常。//但使用带参数的委托可以使用thread.Start()来运行线程这时所传递的参数值为null。Console.ReadKey();}} } 运行结果 销毁线程 Abort() 使用Abort()中止子线程. 通过抛出 threadabortexception 在运行时中止线程。这个异常不能被捕获如果有 finally 块控制会被送至 finally 块。 using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks;namespace ConsoleApp2 {class Test{public static void ChildThread1(){Console.WriteLine(Child thread1 is starts);}//注意ParameterizedThreadStart委托的参数类型必须是object的public static void ChildThread2(object obj){Console.WriteLine(Child thread2 is starts,the parameter is {0}, obj);}public static void ChildThread3(){try{Console.WriteLine(Child thread3 starts);for (int i 0; i 5; i){Thread.Sleep(100);Console.WriteLine(i);}Console.WriteLine(Child Thread3 Completed);}catch (ThreadAbortException e){Console.WriteLine(Thread Abort Exception);}finally{Console.WriteLine(Couldnt catch the thread Exception);}}public static void Main(){ThreadStart thread3 new ThreadStart(ChildThread3);Console.WriteLine(MainThreadCreating the child thread3);Thread thread new Thread(thread3);thread.Start();//停止主线程1000Thread.Sleep(2000);Console.WriteLine(In Main: Aborting the Child thread);thread.Abort();Console.ReadKey();}} }运行结果 ThreadPool和Task using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks;namespace ConsoleApp2 {class Test{public static Thread t null;public static void ChildThread1(){int i 5;while (i 0){Console.WriteLine(string.Format(线程【1】的i:{0} , i));Thread.Sleep(10);i--;}Console.WriteLine(线程【1】结束);//Console.WriteLine(Child thread1 is starts);}//注意ParameterizedThreadStart委托的参数类型必须是object的public static void ChildThread2(object obj){int i 5;while (i 0){Console.WriteLine(string.Format(线程【2】的i:{0} , i));Thread.Sleep(10);i--;}Console.WriteLine(线程【2】结束);}public static void ChildThread3(){int i 5;while (i 0){Console.WriteLine(string.Format(线程【3】的i:{0} , i));Thread.Sleep(10);i--;}Console.WriteLine(线程【3】结束);}public static void Main(string[] args){t new Thread(new ThreadStart(ChildThread1));t.Start();//用线程池ThreadPool.QueueUserWorkItem(ChildThread2, new object());//用Task方法创建System.Threading.Tasks.Task.Factory.StartNew(ChildThread3);Console.ReadLine();}} } 运行结果 线程都是独立的
http://www.zqtcl.cn/news/245117/

相关文章:

  • 建设网站计划ppt模板核酸二维码
  • 宁波网络推广制作seo关键词推广公司
  • 东莞市网站推广西安推广公司无网不胜
  • 全国网站建设有实力建筑人才网123
  • 海安网站设计公司网站开发好学嘛
  • 网站建设深圳公司上海贸易公司注册条件
  • 深圳市坪山新区建设局网站给别人做网站去掉版权
  • 怎么做监测网站的浏览量有没有专业做股指的评论网站
  • 济南微信网站开发网上效果代码网站可以下载吗
  • 门户网站的设计常见的管理信息系统有哪些
  • 网站添加悬浮二维码成都游戏网站开发
  • 用jquery做网站百度seo排名规则
  • 免备案手机网站室内设计说明
  • 网站被做站公司贩卖怎样将qq空间建设为个人网站
  • 网站开发有哪几类淮安app开发公司
  • 营销网站建设公司哪家好兵团第二师建设环保局网站
  • 做推广最好的网站是哪个深圳办公室装修招标
  • 郑州高端网站制作wordpress那个版本好
  • wordpress屏蔽右键f12奉化首页的关键词优化
  • cn域名做犯法网站做电影网站需要哪些证
  • 官方网站有哪些韶关做网站的公司
  • 商城网站设计公司怎么样网站制作预算
  • 在济南什么人想做网站网站建设后怎么做主页
  • 联合年检怎么做网站上国家备案查询
  • 社交网站wap模板wordpress网址导航插件
  • 沈阳快速建站公司有哪些国外做二手服装网站
  • 手机如何建立网站平台seo比较好的优化
  • 电商网站建设外包禅城南庄网站制作
  • 哈尔滨企业网站开发报价免费php网站源码
  • 东莞市公司网站建设淄博网站制作营销