九路 九路
4年前
Android Handler消息机制源码解析
好记性不如烂笔头,今天来分析一下Handler的源码实现Handler机制是Android系统的基础,是多线程之间切换的基础。下面我们分析一下Handler的源码实现。Handler消息机制有4个类合作完成,分别是Handler,MessageQueue,Looper,MessageHandler:获取消息,发送消息,以及处理消息的类Mes
Wesley13 Wesley13
3年前
Java 内存模型
什么是Java内存模型?JMM(JavaMemoryModel,Java内存模型),它定义了多线程访问Java内存的规范。简单的说有以下几部分内容:Java内存模型将内存分为主内存和工作内存定义了几个原子操作,用于操作主内存和工作内存中的变量定义了volatile变量的使用规则happensbefor
Stella981 Stella981
3年前
Hystrix实现ThreadLocal上下文的传递 转
springcloud微服务中,服务间传输全局类参数,如session信息等。一、问题背景Hystrix有2个隔离策略:THREAD以及SEMAPHORE,当隔离策略为THREAD时,是没办法拿到ThreadLocal中的值的。Hystrix提供了基于信号量和线程两种隔离模式,通过在Hystrix基础章节中已经验证过,通过
Stella981 Stella981
3年前
JVM 运行时内存分配
Java内存分配在解释这个问题之前,我想简单的记录一下Java虚拟机对内存的分配管理。!(https://static.oschina.net/uploads/space/2017/0207/160723_gnLQ_1054538.jpg)简单的说,Java运行时内存区域,就由上面几部分构成。青绿色标记的,是每个线程私有的内存区域,其
Stella981 Stella981
3年前
JVM系列九(虚拟机性能监控工具
一、写在前面上一篇文章(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.cnblogs.com%2Fjmcui%2Fp%2F12495341.html)我们介绍了性能监控的一些命令,包括jmap(生成堆存储快照)和jstack(生成线程快照),事实上,在
Stella981 Stella981
3年前
CountDownLatch 源码解析—— await()
上一篇文章(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fwww.cnblogs.com%2Fcuglkb%2Fp%2F8572239.html)说了一下CountDownLatch的使用方法。这篇文章就从源码层面说一下await()的原理。我们已经知道await能够让当前线程处
Wesley13 Wesley13
3年前
MySQL8.0.19 禁用Binlog,保留副本上的提交顺序
作者:HemantDangi译:徐轶韬MySQL8.0.19引入了无Binlog副本(保留事务提交顺序),这意味着用户可以在不启用二进制日志的情况下部署异步副本,并保留相同的顺序提交事务。用户可以禁用Binlog(skiplogbin)和回放线程产生的日志(logslaveupdatesFALSE)进行的更改,同时保留相同提交
Stella981 Stella981
3年前
C# 字符串操作基本过程(Equals、Compare、EndsWith等处理方法)
本文只介绍了比较方法,但是EndsWith,IndexOf等方法均采用相同的过程,先设置CultureInfo(一般情况下调用当前线程的CultureInfo,该语言文化可以通过控制面板设置),然后调用CultureInfo实例下面的CompareInfo属性,实例化语言/国家的CompareInfo实例,并调用对应的字符串操作方法.!(https:
小尉迟 小尉迟
2年前
Java 性能分析工具 JProfiler 注册码
JProfiler是一个Java分析器,可帮助开发人员分析其应用程序的性能。它可用于识别性能瓶颈、内存泄漏和其他可能影响应用程序性能的问题。JProfiler提供了许多用于分析Java应用程序的功能,包括CPU分析、内存分析、线程分析以及与Eclipse、