【多线程与并发】:多线程与内存可见性

目录

前言

可见性是一种复杂的属性,因为其错误总会违背我们的直觉。在单线程环境中,如果向某个变量先写入值,然后在没有其他写入操作的情况下读取这个变量,那么总能得到相同的值。然而,当读和写操作在不同线程中执行时,情况却并非如此。

通常没我们是无法确保执行读操作的线程能适时的看到其他线程写入的值,有时候甚至是不可能的事情。

那么,为什么无法确保执行读操作的线程能适时的看到?为了彻底了解该问题,首先我们需要了解一些线程的基本概念。

1.基本概念

1.1线程与进程

进程:程序(任务)的执行过程,是动态的;持有资源(内存,文件)和线程,是资源和线程的载体。

线程:线程是系统中最小的执行单元,同一进程中有很多线程,线程共享进程的资源。

换句话说,n个线程(n大于等于1)和所有的资源共同组成了进程,参见下图:

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值