C#多线程学习

C#多线程学习:
(一)线程相关概念:
  1)进程:运行中的程序 + 程序所用到的内存和系统资源;

  2)线程:程序的执行流,有专有寄存器(栈指针、程序计数器等),代码区共享。

  3)多线程好处:

  CPU利用率高。

4)多线程坏处:

  线程多-->内存占用多-->需要CPU时间跟踪线程协调和管理-->资源竟用-->多加控制-->造成Bug.

5)相关函数:
  实例:

 1   using System;
 2   using System.Threading;
 3 
 4 namespace ThreadTest
 5 {
 6   class RunIt
 7   {
 8     [STAThread]
 9     static void Main(string[] args)
10     {
11       Thread.CurrentThread.Name="System Thread";
12       Console.WriteLine(Thread.CurrentThread.Name+"'Status:"+Thread.CurrentThread.ThreadState);
13       Console.ReadLine();
14     }
15   }
16 }

 

 

解析:


在这里,我们通过Thread类的静态属性CurrentThread获取了当前执行的线程。
静态属性:类所有对象所公有的属性,无论创建多少类的实例,静态属性只有一个。
CurrentThread是静态的原因--虽多线程同时存在,但某一时刻,CPU只执行一个线程。

Thread类有几个至关重要的方法,描述如下:
Start():启动线程;
Sleep(int):静态方法,暂停当前线程指定的毫秒数;
Abort():通常使用该方法来终止一个线程;
Suspend():该方法并不终止未完成的线程,它仅仅挂起线程,以后还可恢复;
Resume():恢复被Suspend()方法挂起的线程的执行。


(二)操作进程线程:
(三)生产者&消费者:
(四)自动管理(线程池):
(五)自动管理(定时器):
(六)互斥关系:

转载于:https://www.cnblogs.com/xuejianhui/archive/2012/09/17/2689009.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值