• 软件构造 并发2


    交织竞争条件
    在某时刻一个运行核心只有一个线程可以运行。   进程/线程采用OS提供的时间片特征来共享处理时间。
    当线程数多于处理器数量时,并发性通过时间片来模拟,处理器切换处理不同的线程。
    例子:时间片(其使用是不可预知的,非确定性的,意味着线程可能随时暂停或恢复)
               三个线程T1 T2 T3可能在具有两个实际处理器的机器上进行时间分割,一个处理器运行线程T1,另一个运行线程T2,第二个处理器切换到运行线程T3.
                                                                                                                               线程T2只是暂停,直到下一个时间片在同一个处理器或另一个处理器上
              共享内存银行存储实例:在Java中,采用happened-before机制,保证了语句A内存的写 入对语句B是可见的,也就是在B开始读数据之前,A已经完成了数据 的写入。 确保内存一致性
                                                      每次运行包含竞争条件的程序时,都可能会得到不同 的行为。  

                                                      打印 调试操作很慢,通常慢100-1000倍,所有有时打印出来的并不是想要的该时间段的结果                                                

                      

  • 相关阅读:
    unix网络编程 初步了解TCP/IP协议
    unix网络编程 常见概念
    linux 环境变量
    linux c编程
    第二周学习笔记
    jmeter第一周学习笔记
    建造者模式
    原型设计模式
    抽象工厂模式
    工厂方法模式
  • 原文地址:https://www.cnblogs.com/xgl122/p/9195342.html
Copyright © 2020-2023  润新知