zoukankan      html  css  js  c++  java
  • 2019-07-31 C#基础知识学习

    什么是进程:进程是系统中正在运行的一个程序,程序一旦运行就是进程。

    什么是线程:线程是进程的一个实体,是进程的一条执行路径。

    进程和线程的区别体现在以下几个方面:

    1.地址空间和其他资源(如打开文件):进程间相互独立,同一进程的各线程间共享。某进程内的线程在其他进程内不可见。

    2.通信:进程间通信IPC(管道,信号量,共享内存,消息队列),线程间可以直接独写进程数据段(如全局变量)来进程通信——需要进程同步和互斥手段的辅助,以保证数据的一致性。

    3.调度和切换:线程上下文切换比进程上下文切换快得多。

    4.在多线程OS中,进程不是一个可执行的实体。

    进程和线程的选择取决以下几点:

    1.需要频繁创建销毁的优先使用线程;因为对进程来说创建和销毁一个进程的代价是很大的。

    2.线程的切换速度快,所以在需要大量计算,切换频繁时使用线程,还有耗时的操作时用使用线程可提高应用程序的响应。

    3.因为对CPU系统的效率使用上线程更占优势,所以可能要发展到多机分布的用进程,多核分布用线程。

    4.并行操作时用线程,如C/S架构的服务器端并发线程响应用户的请求。

    5.需要更稳定安全时,适合选择进程;需要速度时,选择线程更好。

     

  • 相关阅读:
    网线帘幕动画
    图片缩放/旋转/平移/设置分辨率
    贝塞尔样条
    线性梯度画刷
    画七彩五角星
    kafka安装
    在windows远程提交任务给Hadoop集群(Hadoop 2.6)
    把Spark SQL的metadata存储到mysql
    使用IDEA开发SPARK提交remote cluster执行
    Netty的Channel
  • 原文地址:https://www.cnblogs.com/wafs521/p/11277574.html
Copyright © 2011-2022 走看看