并发编程
Huzz童年的纸飞机
追不到的梦想换个梦追不就得了
展开
-
ThreadLocal本地线程副本变量如何做到线程隔离
如果你创建了一个ThreadLocal变量,那么访问这个变量的每个线程都会有这个变量的一个本地拷贝,多个线程操作这个变量的时候,实际是操作自己本地内存里面的变量,从而起到线程隔离的作用,避免了线程安全问题.调用set时, ThreadLocal会根据当前线程来查找当前线程的ThreadLocalMap, 然后以ThreadLocal作为key将value保存到map中;Thread类有个类型为ThreadLocalMap的成员变量threadLocals, 用于存放变量, 所以需要把副本变量保存到这里。..原创 2022-08-25 18:22:30 · 317 阅读 · 0 评论 -
JAVA并发编程 - 概念介绍
进程 一个在内存中运行的应用程序, 每个进程有自己独立的内存空间, 可以包含多个线程 线程 进程中的一个执行任务, 多个线程共享进程的内存空间 进程与线程的区别 1. 线程具有许多进程的特征, 称线程为轻型进程, 成进程为重型进程 2. 进程是操作系统资源分配的基本单位, 线程是CPU调度和执行的基本单位 3. 进程切换的资源开销大, 线程间的切换资源开销小 4. 进程与进程之间的资源是独立的, 而同一个进程下的所有线程共享这个线程的资源 下文切换 一个CPU在任意时刻只...原创 2022-04-21 17:26:22 · 364 阅读 · 0 评论