• 深入理解同步与异步,阻塞与非阻塞


    1.同步与异步

    我们讨论的是广义的同步和异步,而不是狭义的线程和进程同步与异步。

    首先需要回顾一下进程和线程的概念:

    进程和线程的区别是操作系统最经典的问题,无论是面试还是相关专业课的考试,基本上都会出现它的身影,可是至少有一半以上的人把它们混淆在一起,其实过于扣字眼和概念也大可不必。但是有关这两个概念确实有一些争议性的地方。

    生产者消费者问题,也叫有限缓冲区问题,其实是多进程同步问题,而百度百科和很多博客,都描述成是多线程同步的问题。虽然说线程也可以叫轻量的进程,但这个地方还是区别一下比较好。

    维基百科上的写法就比较严谨:

    multi-process synchronization problem:多进程同步问题

    进程:分两种情况:

    1.在非多线程OS中,进程是资源分配调度和独立运行的基本单位。关键字:独立运行,拥有资源。

    2.在多线程OS中,进程只是资源分配的基本单位,而不是独立运行的基本单位,多线程OS把线程作为是资源调度和独立运行的基本单位

    线程:CPU调度和分派的基本单位

  • 相关阅读:
    HelloWorld入门程序
    再写博客
    iOS--小结系列一
    iOS--ARC
    ios--block
    iOS--protocol
    iOS--内存管理
    指针基本概念
    ZooKeeper系列之十:ZooKeeper的一致性保证及Leader选举
    ZooKeeper系列之九:ZooKeeper API简介及编程
  • 原文地址:https://www.cnblogs.com/umrx/p/7994865.html
Copyright © 2020-2023  润新知