
多线程与高并发
小匠杨
这个作者很懒,什么都没留下…
展开
-
多线程与高并发学习笔记(四)
前述文章介绍了一些线程相关的知识点,今天我们讨论一下线程池,可以说线程池是我们编程人员必不可少的知识点之一;那什么是线程池呢? 简单理解其实就是装线程和任务的一个容器;有了它我们可以最大程度的减少了频繁的创建和销毁线程所带来的资源开销,其实总的来说就是为了减小资源的浪费,使效率尽可能的最大化。Callable与Future说到线程池,那么我们先介绍下Callable与Future接口;说到线程...原创 2020-05-08 19:41:20 · 264 阅读 · 0 评论 -
多线程与高并发学习笔记(三)
ThreadLocalThreadLocal线程局部变量,每个线程都维护一个ThreadLocal相关的地址空间,相当于每个线程都有一个自己的数据保存地,不会互相影响;以空间换时间的策略。原理分析分析ThreadLocal源码可知:使用ThreadLocal后,每个线程都维护着一个Map,而Map里存着Entry对象;key为ThreadLocal对象,值为ThreadLocal 的set...原创 2020-05-01 21:22:21 · 317 阅读 · 0 评论 -
多线程与高并发学习笔记(二)
本文主要介绍一些Java中常用的同步工具类ReentrantLock可重入锁,可代替synchronized,它比synchronized更加的灵活,提供了更多的方法,但在使用上需要手动的加锁和释放锁;底层使用CAS来实现。使用synchronized锁定的话如果遇到异常,jvm会自动释放锁,但是lock必须手动释放锁,因此经常在finally中进行锁的释放.常用方法:Boolean t...原创 2020-04-29 22:21:22 · 343 阅读 · 0 评论 -
多线程与高并发学习笔记(一)
在编程领域,我们要想有所提高,那么需要跨越的一座大山就是多线程与高并发。这是我多线程与高并发学习系列文章的第一篇,我会从最基本的什么是线程讲起,希望更多的人能够从这些文章中有所收获为你学习多线程与高并发助力,用最少的时间得到最大的成果。线程基本概念说到线程就得从程序说起,程序是躺在磁盘中的应用代码,进程是运行中的程序,而线程是进程的不同执行路径,用专业一点的说法就是进程是资源分配的基本单位,...原创 2020-04-28 12:41:12 · 369 阅读 · 0 评论