forked from CL0610/Java-concurrency
-
Notifications
You must be signed in to change notification settings - Fork 0
[ImgBot] Optimize images #1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
imgbot
wants to merge
1
commit into
master
Choose a base branch
from
imgbot
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*Total -- 16,000.14kb -> 12,407.32kb (22.45%) /08.初识Lock与AbstractQueuedSynchronizer(AQS)/mutex的执行情况.png -- 21.90kb -> 8.96kb (59.09%) /08.初识Lock与AbstractQueuedSynchronizer(AQS)/concurrent目录结构.png -- 28.19kb -> 12.95kb (54.08%) /06.你以为你真的了解final吗?/final修饰成员变量.png -- 70.27kb -> 34.85kb (50.4%) /06.你以为你真的了解final吗?/final修饰局部变量.png -- 20.75kb -> 10.86kb (47.67%) /19.并发容器之BlockingQueue/BlockingQueue和BlockingDeque的区别.png -- 18.87kb -> 10.67kb (43.43%) /09.深入理解AbstractQueuedSynchronizer(AQS)/LockDemo debug下.png -- 61.71kb -> 39.47kb (36.04%) /04.彻底理解synchronized/偏向锁撤销流程.png -- 70.63kb -> 45.95kb (34.94%) /19.并发容器之BlockingQueue/BlockingQueue基本操作.png -- 9.74kb -> 6.53kb (32.97%) /23.FutureTask基本操作总结/FutureTask状态迁移图.jpg -- 1,290.98kb -> 874.44kb (32.27%) /19.并发容器之BlockingQueue/LinkedBlockingDeque的基本操作.png -- 25.97kb -> 17.61kb (32.18%) /21.线程池ThreadPoolExecutor实现原理/execute执行过程示意图.jpg -- 1,972.79kb -> 1,350.95kb (31.52%) /05.彻底理解volatile/线程A执行volatile写后的内存状态图.png -- 30.23kb -> 20.78kb (31.26%) /23.FutureTask基本操作总结/FutureTask的get和cancel的执行示意图.jpg -- 2,286.55kb -> 1,578.11kb (30.98%) /03.java内存模型以及happens-before规则/JMM层级图.png -- 27.84kb -> 19.48kb (30.01%) /06.你以为你真的了解final吗?/final域读可能存在的执行时序.png -- 66.81kb -> 46.88kb (29.84%) /15.并发容器之ConcurrentLinkedQueue/线程A和线程B有可能的执行时序.png -- 35.33kb -> 24.82kb (29.74%) /15.并发容器之ConcurrentLinkedQueue/线程B进行poll后队列的状态图.png -- 17.17kb -> 12.28kb (28.46%) /04.彻底理解synchronized/synchronized的happens-before关系.png -- 60.13kb -> 43.35kb (27.9%) /15.并发容器之ConcurrentLinkedQueue/队列进行入队操作后casTail失败后的状态图.png -- 17.06kb -> 12.30kb (27.86%) /12.详解Condition的await和signal等待通知机制/等待队列的示意图.png -- 23.51kb -> 16.98kb (27.78%) /15.并发容器之ConcurrentLinkedQueue/经过一次循环后的状态.png -- 19.05kb -> 13.76kb (27.75%) /21.线程池ThreadPoolExecutor实现原理/线程池执行流程图.jpg -- 1,800.62kb -> 1,306.40kb (27.45%) /15.并发容器之ConcurrentLinkedQueue/Node2从队列中出队后的状态.png -- 15.73kb -> 11.46kb (27.13%) /08.初识Lock与AbstractQueuedSynchronizer(AQS)/concurrent包实现整体示意图.png -- 26.73kb -> 19.65kb (26.49%) /25.大白话说java并发工具类-CountDownLatch,CyclicBarrier/CyclicBarrier执行示意图.jpg -- 409.25kb -> 302.81kb (26.01%) /06.你以为你真的了解final吗?/写final修饰引用类型数据可能的执行时序.png -- 63.29kb -> 46.89kb (25.9%) /16.并发容器之CopyOnWriteArrayList/最终一致性的分析.png -- 24.51kb -> 18.23kb (25.61%) /05.彻底理解volatile/VolatileExample的happens-before关系推导.png -- 55.73kb -> 41.86kb (24.88%) /15.并发容器之ConcurrentLinkedQueue/线程A和线程B可能存在的执行时序.png -- 53.60kb -> 40.29kb (24.84%) /09.深入理解AbstractQueuedSynchronizer(AQS)/队列示意图.png -- 14.47kb -> 11.18kb (22.7%) /04.彻底理解synchronized/synchronizedDemo.class.png -- 67.30kb -> 53.81kb (20.04%) /08.初识Lock与AbstractQueuedSynchronizer(AQS)/AQS提供的模板方法.png -- 240.78kb -> 194.02kb (19.42%) /08.初识Lock与AbstractQueuedSynchronizer(AQS)/AQS可重写的方法.png -- 126.61kb -> 102.25kb (19.24%) /22.线程池之ScheduledThreadPoolExecutor/ScheduledThreadPoolExecutor类的UML图.png -- 35.68kb -> 28.94kb (18.89%) /02.线程的状态转换以及基本操作/futureTask接口实现关系.png -- 9.62kb -> 7.84kb (18.55%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/cleanSomeSlots示意图.png -- 9.23kb -> 7.53kb (18.44%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/cleanSomeSlots示意图 (2).png -- 9.23kb -> 7.53kb (18.44%) /12.详解Condition的await和signal等待通知机制/AQS持有多个Condition.png -- 81.76kb -> 66.81kb (18.29%) /09.深入理解AbstractQueuedSynchronizer(AQS)/当前节点引用线程获取锁,当前节点设置为队列头结点.png -- 72.94kb -> 60.74kb (16.72%) /02.线程的状态转换以及基本操作/线程状态.png -- 98.08kb -> 83.83kb (14.53%) /Java并发知识图谱.png -- 3,594.47kb -> 3,074.22kb (14.47%) /12.详解Condition的await和signal等待通知机制/await方法示意图.png -- 99.79kb -> 85.92kb (13.9%) /17.并发容器之ThreadLocal/ThreadLocal各引用间的关系.png -- 117.75kb -> 102.53kb (12.93%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/threadLocal引用示意图.png -- 117.76kb -> 102.54kb (12.93%) /02.线程的状态转换以及基本操作/线程状态转换关系.png -- 147.37kb -> 128.88kb (12.55%) /12.详解Condition的await和signal等待通知机制/signal执行示意图.png -- 98.33kb -> 86.22kb (12.32%) /05.彻底理解volatile/内存屏障分类表.png -- 122.83kb -> 107.93kb (12.13%) /05.彻底理解volatile/volatile重排序规则表.png -- 29.86kb -> 26.39kb (11.6%) /12.详解Condition的await和signal等待通知机制/debug模式下情景图.png -- 190.25kb -> 168.20kb (11.59%) /14.并发容器之ConcurrentHashMap(JDK 1.8版本)/ConcurrentHashMap散列桶数组结构示意图.png -- 32.17kb -> 28.45kb (11.57%) /04.彻底理解synchronized/Mark Word状态变化.png -- 46.84kb -> 41.53kb (11.34%) /14.并发容器之ConcurrentHashMap(JDK 1.8版本)/ConcurrentHashMap扩容示意图.png -- 73.49kb -> 65.29kb (11.16%) /04.彻底理解synchronized/各种锁的对比.png -- 91.51kb -> 81.30kb (11.15%) /04.彻底理解synchronized/对象,对象监视器,同步队列和线程状态的关系.png -- 53.67kb -> 47.70kb (11.13%) /04.彻底理解synchronized/Mark Word存储结构.png -- 23.16kb -> 20.65kb (10.82%) /04.彻底理解synchronized/偏向锁获取和撤销流程.png -- 185.33kb -> 165.84kb (10.52%) /03.java内存模型以及happens-before规则/happens-before与JMM的关系.png -- 149.85kb -> 134.11kb (10.5%) /05.彻底理解volatile/volatile写插入内存屏障示意图.png -- 86.73kb -> 77.64kb (10.48%) /04.彻底理解synchronized/轻量级锁加锁解锁以及锁膨胀.png -- 250.08kb -> 223.94kb (10.45%) /03.java内存模型以及happens-before规则/JMM内存结构抽象结构示意图.png -- 104.28kb -> 93.38kb (10.45%) /03.java内存模型以及happens-before规则/从源码到最终执行的指令序列的示意图.png -- 32.99kb -> 29.55kb (10.45%) /05.彻底理解volatile/volatile读插入内存屏障示意图.png -- 80.05kb -> 71.71kb (10.42%) /03.java内存模型以及happens-before规则/JMM设计示意图.png -- 196.53kb -> 176.45kb (10.22%) /04.彻底理解synchronized/线程A写共享变量.png -- 10.56kb -> 9.60kb (9.14%) /06.你以为你真的了解final吗?/final域写可能的存在的执行时序.png -- 25.50kb -> 23.28kb (8.68%) /06.你以为你真的了解final吗?/final域引用可能的执行时序.png -- 17.90kb -> 16.50kb (7.83%) /09.深入理解AbstractQueuedSynchronizer(AQS)/独占式锁获取(acquire()方法)流程图.png -- 160.54kb -> 148.57kb (7.46%) /07.三大性质总结:原子性、可见性以及有序性/不加volatile可能的执行时序.png -- 14.37kb -> 13.34kb (7.15%) /05.彻底理解volatile/线程B读volatile后的内存状态图.png -- 11.92kb -> 11.25kb (5.7%) /12.详解Condition的await和signal等待通知机制/condition下的等待通知机制.png -- 70.87kb -> 67.37kb (4.94%) /04.彻底理解synchronized/线程B读共享变量.png -- 14.13kb -> 13.46kb (4.77%) /17.并发容器之ThreadLocal/理想散列表的一个示意图.png -- 4.02kb -> 3.85kb (4.2%) /17.并发容器之ThreadLocal/开放定址法示意图.jpg -- 18.26kb -> 17.53kb (3.99%) /09.深入理解AbstractQueuedSynchronizer(AQS)/超时等待式获取锁(doAcquireNanos()方法).png -- 50.48kb -> 48.65kb (3.63%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/前向未搜索到脏entry,后向环形搜索到可覆盖的entry.png -- 48.09kb -> 46.48kb (3.35%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/向前环形搜索到脏entry,向后环形查找到可覆盖的entry的情况.png -- 38.12kb -> 36.93kb (3.13%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/前向环形搜索到脏entry,向后环形未搜索可覆盖entry.png -- 41.42kb -> 40.25kb (2.82%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/cleanSomeSlots执行情景图.png -- 35.54kb -> 34.77kb (2.18%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/1.2情况示意图.png -- 43.22kb -> 42.41kb (1.88%) /18.一篇文章,从源码深入详解ThreadLocal内存泄漏问题/前向环形未搜索到脏entry,后向环形查找未查找到可覆盖的entry.png -- 45.84kb -> 45.24kb (1.31%) /09.深入理解AbstractQueuedSynchronizer(AQS)/banner.jpg -- 25.35kb -> 25.18kb (0.66%) /17.并发容器之ThreadLocal/分离链表法示意图.gif -- 8.28kb -> 8.25kb (0.46%) Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Beep boop. Your images are optimized!
Your image file size has been reduced by 22% 🎉
Details
📝 docs |
repo | 🙋🏾 issues | 🏪 marketplace
~Imgbot - Part of Optimole family