zoukankan      html  css  js  c++  java
  • (原创)理解多线程

    在Windows平台开发上位机监控软件,就要熟悉平台的软硬件特点。

    硬件:CPU是多核的,

    软件:所有软件都是在windows操作系统的管理下运行。要看到小和大的关系。

    因为CPU是多核的,所以在编写C#软件时可以进行多线程的编程,利用多核来并行执行程序。

    多线程编程时,你写的程序的每条线程都对同一个变量(这种变量是公共变量,是公开的)进行读写,也就是多对一的关系,就涉及新的问题:线程同步和线程异步。

    线程同步:

    所谓同步: 是指在某一时刻只有一个线程可以访问变量 。多个线程同时访问同一资源,必须等一个线程访问结束,才能访问资源,比较浪费时间,效率低 .当已经有1个线程在进行变量访问的过程时,其他线程也想访问这个变量,但是不能访问,只能等待,等到进行中的线程结束才有机会访问。

    线程安全:同步了线程就会安全。有了同步就不担心出错。线程如果不涉及到操作公共变量的时候就不要同步,否则就需要同步才能保证线程安全

    同步的好处与弊端

    好处:解决了线程的安全问题。

    弊端:每次都有判断锁,降低了效率。

    但是在安全与效率之间,首先考虑的是安全。

    线程异步:

    访问资源时在空闲等待时可以同时访问其他资源,实现多线程机制。

  • 相关阅读:
    手动封装 时间选择器(只显示时分)
    页面跳转问题-button 确定提交按钮
    java String类型转 java.sql.time类型
    Mysql 时间处理
    微信-商城商品的图文/商品链接分享(后台数据合成图片+二维码生成)
    np.nan 1.0 2.0 df.apply
    pandas math.isnan
    df.apply
    pandas多条件行数据筛选
    pandas cumsum/sum calc percentage
  • 原文地址:https://www.cnblogs.com/softsee/p/11775838.html
Copyright © 2011-2022 走看看