[C#中级] 多线程

线程

讲多线程之前,我们先讲线程。

 

C#中的线程类叫Thread,主要用来创建或控制线程。

 

先上个例子

 

static void Main(string[] args){
      Thread thread = new Thread(ThreadTest);    //设置线程名称    thread.Name = "测试线程";    //调用Start方法启动线程    thread.Start();
    Console.ReadKey();}
public static void ThreadTest() {
      Console.WriteLine("Name:"+Thread.CurrentThread.Name);}

new了一个线程,传入了一个委托参数ThreadTest()。
然后给线程设置了一个名称

最后调用线程的Start()方法,启动线程。

委托方法中输出了线程的名称。

 

多线程

 

多线程,其核心价值是为了在同一时间段内完成多个任务。

 

结合现实场景来看,就是火车站售票厅的售票窗口了。如果只有一个售票窗口,以我国人口基数来看,显然是不现实的。所以,多个售票窗口就满足多线程的概念,同一个时间段,处理多个任务。

 

多线程也是有缺点的,每开辟一个新的线程,势必要占用一定的内存空间,开辟的越多,占用的内存也就越多。

 

线程的概念基本上大家应该了解了,接下来通过实际例子来深入了解线程在实际操作过程中可能遇到的问题。

 

 

例子

 

 

 

我们用之前说到的火车站售票窗口,来讲多线程的第一个问题。并发访问共享数据问题。假如,一个车次有100张可

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值