为什么要使用线程?

在多CPU和多核时代,使用线程能够充分利用硬件资源,提升软件的运行效率。但是没有章法的乱用线程会适得其反。

1:线程和进程关系?

一个程序运行,通常在任务管理器中看到一个进程。这个进程占用多少资源,并不是由进程本身决定。而是由这个进程分配的线程

决定。也就是说操作系统是通过线程来管理程序资源的。

2:什么是应用程序域?

一个应用程序对应一个进程,每个进程会映射对应的物理内存,从而隔离程序。
特殊情况:在一个进程中,我们通常会调用另一个应用程序,比如在VS中,对应devenv进程,创建一个记事本进程。
如果单独开一个进程,性能开销是比较大的。
为了解决这个问题,.NET中引入应用程序域(AppDomain),并且将它设置在进程和线程之间。

每个进程至少包括一个应用程序域,在托管代码运行时,CLR还会额外的创建《系统域》和《共享域》,存放应用程序需要的资源

这样的话,就能够减少进程的总数,提高系统性能,减轻进度调度的压力。应用程序域可以看成是程序集的“容器”。

应用程序域可以被主动创建,也可以被卸载。并且很快被GC回收。

  • 7
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值