首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
线程和线程池
订阅
A_A64620
更多收藏集
微信扫码分享
微信
新浪微博
QQ
24篇文章 · 0订阅
面试官:说说你对ThreadLocal的了解
一般有多个孩子的家庭,买玩具都得买多个。如果就买一个,嘿嘿就比较刺激了。这就是避免共享,给孩子每人一个玩具对应到我们Java中也就是每个线程都有自己的本地变量,咱们自己玩自己的,避免争抢,和谐相处使得线程安全。 Java就是通过ThreadLocal来实现线程本地存储的。 可以…
ThreadLocal和ThreadLocalMap源码分析
相信很多程序猿在平常实现功能的过程当中,都会遇到想要某些静态变量,不管是单线程亦或者是多线程在使用,都不会产生相互之间的影响,也就是这个静态变量在线程之间是读写隔离的。 有一个我们经常使用的工具类,它的并发问题就是用ThreadLocal来解决的,我相信大多数人都看过,…
从0到1玩转线程池
我们一般不会选择直接使用线程类Thread进行多线程编程,而是使用更方便的线程池来进行任务的调度和管理。线程池就像共享单车,我们只要在我们有需要的时候去获取就可以了。甚至可以说线程池更棒,我们只需要把任务提交给它,它就会在合适的时候运行了。但是如果直接使用Thread类,我们就…
多线程笔记---锁(Synchronized)的优化和种类
顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。具有强烈的独占性和排他性。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。Java的s…
并发与多线程基础
这是一个面试常问的基础问题,你应该肯定的回答线程只有五种状态,分别是:新建状态、就绪状态、执行状态、阻塞状态、终止状态。 由于Scheduler(调度器)的时间片分配算法,每个Running的线程会执行多长时间是未知的,因此线程能够在Runnable和Running之间来回转换…
Java中Thread 和Runnable 深入理解
Thread类是接口Runnable的一个实现类。 native表明这个方法是个原生函数,即这个函数是用C/C++实现的,被编译成DLL,由Java调用。 native 方法是在注册是在Thread对象初始化完成的,如图,静态块static里有个registerNatives方…
线程和线程池
线程 在java中实现线程的方式: 继承Thread类 实现Runable接口。 main方法其实也是一个线程。在java中,每次程序运行至少启动2个线程。一个是main线程,一个是垃圾收集线程。 对比实现Runnable接口比继承Thread类所具有的优势:1):适合多个相同…
Java 多线程 - Synchronized 和变量并发访问
在非线程安全得情况下,多个线程对同一个对象中得实例变量进行并发访问时,产生得后果就是脏读,也就是取到得数据其实是被更改过得。 非线程安全问题存在于"实例变量"中,如果是方法内部得私有变量,则不存在"非线程安全"的问题。 使用synchronized修饰方法时应注意使用同一个锁对…
浅谈ThreadPoolExecutor线程池的原理
我这里再详细讲一下,首先,这里判断了两个条件,如果第一个条件满足且第二个条件不满足时,会直接返回false,也就是直接失败。我们反过来想,什么情况下会继续执行?这么一来条件就简化了很多,也就是以下条件成立时,会接着进行判断,而不会直接返回失败:
线程池管理(1)-为什么需要线程池
为什么需要线程池呢,没想明白这个问题,看再多线程池的源码都没有用,先要知道线程池技术解决了什么问题,才能看的懂源码,因为所有的代码都是为了解决实际的工程问题。 抛几个问题,看看你是否知道,不知道的话,可能你对线程池的理解还不够深入,还是一知半解。那么本文会对你有用,请继续看下去…