1 / 23
文档名称:

c#多线程.doc

格式:doc   大小:185KB   页数:23页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c#多线程.doc

上传人:253214894 2018/9/16 文件大小:185 KB

下载得到文件列表

c#多线程.doc

相关文档

文档介绍

文档介绍:C#的多线程机制探索 123456789 下一页注: Windows是一个多任务的系统,如果你使用的是windows2000及其以上版本,你可以通过任务管理器查看当前系统运行的程序和进程。什么是进程呢?当一个程序开始运行时,它就是一个进程,进程所指包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。多线程是指程序中包含多个执行流,即在一个程序中可以同时运行多个不同的线程来执行不同的任务,也就是说允许单个程序创建多个并行执行的线程来完成各自的任务。浏览器就是一个很好的多线程的例子,在浏览器中你可以在下载JAVA小应用程序或图象的同时滚动页面,在访问新页面时,播放动画和声音,打印文件等。多线程的好处在于可以提高CPU的利用率——任何一个程序员都不希望自己的程序很多时候没事可干,在多线程程序中,一个线程必须等待的时候,CPU可以运行其它的线程而不是等待,这样就大大提高了程序的效率。然而我们也必须认识到线程本身可能影响系统性能的不利方面,以正确使用线程:线程也是程序,所以线程需要占用内存,线程越多占用内存也越多多线程需要协调和管理,所以需要CPU时间跟踪线程线程之间对共享资源的访问会相互影响,必须解决竞用共享资源的问题线程太多会导致控制太复杂,最终可能造成很多Bug 基于以上认识,我们可以一个比喻来加深理解。假设有一个公司,公司里有很多各司其职的职员,那么我们可以认为这个正常运作的公司就是一个进程,而公司里的职员就是线程。一个公司至少得有一个职员吧,同理,一个进程至少包含一个线程。在公司里,你可以一个职员干所有的事,但是效率很显然是高不起来的,一个人的公司也不可能做大;一个程序中也可以只用一个线程去做事,事实上,一些过时的语言如fortune,basic都是如此,但是象一个人的公司一样,效率很低,如果做大程序,效率更低——事实上现在几乎没有单线程的商业软件。公司的职员越多,老板就得发越多的薪水给他们,还得耗费大量精力去管理他们,协调他们之间的矛盾和利益;程序也是如此,线程越多耗费的资源也越多,需要CPU时间去跟踪线程,还得解决诸如死锁,同步等问题。总之,如果你不想你的公司被称为“皮包公司”,你就得多几个员工;如果你不想让你的程序显得稚气,就在你的程序里引入多线程吧! 本文将对C#编程中的多线程机制进行探讨,通过一些实例解决对线程的控制,多线程间通讯等问题。为了省去创建GUI那些繁琐的步骤,更清晰地逼近线程的本质,下面所有的程序都是控制台程序,()是为了使程序中途停下来,以便看清楚执行过程中的输出。好了,废话少说,让我们来体验一下多线程的C#吧! ,至少有一个主线程,下面这段小程序可以给读者一个直观的印象://;;namespaceThreadTest{ classRunIt { [STAThread] staticvoidMain(string[]args) { ="SystemThread";//给当前线程起名为"SystemThread"(+"'Status:"+); (); } }} 编译执行后你看到了什么?是的,程序将产生如下输出: SystemThread'sStatus:Running 在这里,我们通过Thread类的静态属性CurrentThread获取了当前执行的线程,对其Name属性赋值“SystemThread”,最后还输出了它的当前状态(ThreadState)。所谓静态属性,就是这个类所有对象所公有的属性,不管你创建了多少个这个类的实例,但是类的静态属性在内存中只有一个。很容易理解CurrentThread为什么是静态的——虽然有多个线程同时存在,但是在某一个时刻,CPU只能执行其中一个。就像上面程序所演示的,我们通过Thread类来创建和控制线程。注意到程序的头部,我们使用了如下命名空间: usingSystem; ; frameworkclasslibrary中,。其中提供Thread类

最近更新

小学课后托管班合作协议 2页

【单元AB卷】六年级下册数学试题-第二单元百分.. 9页

人教版五年级上册数学《梯形的面积课时练及答.. 2页

小贷机构风险管理顾问合作协议 3页

最新北师大版小学六年级数学下册《画一画》名.. 18页

部编人教版小学一年级语文下册《猜字谜》教学.. 5页

部编人教版小学四年级语文集体备课上册八单元.. 34页

市政广场土方劳务分包合同范本 4页

帷幕灌浆工程节能减排施工协议 3页

最新人教部编版小学二年级语文上册《语文园地.. 9页

新部编版小学三年级上册语文第五单元知识盘点.. 17页

新人教部编版一年级上册语文汉语拼音7-z-c-s-.. 16页

建筑智能化土木工程承包协议书 3页

【期末复习】人教统编版三年级下册语文试题-字.. 5页

循环贷款担保与国际贸易合同 3页

房产买卖代理合同书(含交易纠纷解决) 3页

房地产销售合同中房屋质量及售后服务保障 3页

托盘物流解决方案供应商合同范本 3页

押证不押车汽车消费贷款合同参考模板 3页

挖掘机土方工程变更合同 3页

挖掘机销售与培训服务合同范本 3页

政府外债管理合同范本 3页

教育改革项目建议书编制委托合同规范文本 4页

数字经济项目咨询合同精选 2页

文化产业信托借款合同规范样本 3页

文化创意产业项目评估咨询服务合同 3页

文化旅游项目委托开发合同书 3页

斜屋面挂瓦劳务工程绿色环保施工合同 3页

新型塔吊与智能人货电梯劳务分包技术服务合同.. 3页

新型环保材料瓦工劳务承包项目合同 3页