• (原创)理解多线程


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

    硬件:CPU是多核的,

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

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

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

    线程同步:

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

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

    同步的好处与弊端

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

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

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

    线程异步:

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

  • 相关阅读:
    【计算机视觉】欧拉角Pitch/Yaw/Roll
    【leetcode】101-Symmetric Tree
    【leetcode】100-Same Tree
    【leetcode】88-Merge Sorted Array
    【leetcode】83-Remove Duplicates from Sorted List
    【leetcode】70-ClimbingStairs
    【计算机视觉】KCF算法
    第1章 Linux系统简介
    第1课 进阶高手的大门
    第3章 在对象之间搬移特性(2):提炼类、类的内联化
  • 原文地址:https://www.cnblogs.com/softsee/p/11775838.html
Copyright © 2020-2023  润新知