Wesley13 Wesley13
3年前
java多线程——volatile
这是java多线程第三篇:《java多线程—线程怎么来的》(https://my.oschina.net/u/1859679/blog/1517807)《java多线程内存模型》(https://my.oschina.net/u/1859679/blog/1525343)上一篇《java多线程—内存模型》已经讲解了java
Stella981 Stella981
3年前
Eth
1\.Ethash 算法1.1EthashEthash是以太坊1.0中使用的PoW(工作量证明)算法,它是Hashimoto算法结合Dagger之后产生的一个变种。它的特点是计算的效率基本与CPU无关,却和内存大小和内存带宽正相关。因此通过共享内存的方式大规模部署的矿机芯片并不能在挖矿效率上有线性或者超线性的增长。该算法的一般
Stella981 Stella981
3年前
JVM系列之:内存与垃圾回收篇(二)
JVM系列之:内存与垃圾回收篇(二)本篇内容概述:1、堆HeapArea2、方法区MethodArea3、运行时数据区总结4、对象的实例化内存布局和访问定位一、堆HeapArea1、堆的核心概念
Stella981 Stella981
3年前
ClickHouse和他的朋友们(10)MergeTree Write
原文出处:https://bohutang.me/2020/08/18/clickhouseandfriendsmergetreewal/最后更新:20200918数据库系统为了提高写入性能,会把数据先写到内存,等“攒”到一定程度后再回写到磁盘,比如MySQL的bufferpool机制。因为数据先写到内存,为了数
Stella981 Stella981
3年前
ConcurrentHashmap 解析
ConcurrentHashmap(JDK1.7) 总体描述:  concurrentHashmap是为了高并发而实现,内部采用分离锁的设计,有效地避开了热点访问。而对于每个分段,ConcurrentHashmap采用final和内存可见修饰符volatile关键字(内存立即可见:Ja
Wesley13 Wesley13
3年前
mysql 高可用方案梳理
mysql高可用方案梳理集群部署种类同步集群1.结构:datasqlmgm节点2.特点内存级别的,对硬件要求较低,但是对内存要求较大。换算比例为:1:1.1数据同时放在几台服务器上,冗余较好;速度一
Wesley13 Wesley13
3年前
Java虚拟机内存优化实践
!(https://oscimg.oschina.net/oscnet/04be16a6c66eba872900321785c7b9c9690.png)  众所周知,Java是从C的基础上发展而来的,而C程序的很大的一个问题就是内存泄露难以解决,尽管Java的JVM有一套自己的垃圾回收机制来回收内存,在许多情况下并不需要java程序开发人员操
Wesley13 Wesley13
3年前
Java程序如何不产生垃圾
应用程序如何可以不产生垃圾看上去很难想象,而且这个话题已经复杂到超出本文讨论的范畴,但是如果考虑以下几个方面可能会容易理解:JVM将内存分成两个部分来管理:堆和栈。这就是为什么当缺少内存时会有两个不同的错误(OutOfMemoryError和StackOverflowError)。栈内存只能被当前线程和当前执行的方法访问,因此,当线程离开当前执行
Stella981 Stella981
3年前
JVM学习第一天
程序计数器当前线程所执行的字节码的行号指示器每个线程都有自己私有的计数器native方法,计数器值为空该内存区域没有规定任何的OutOfMemoryError情况虚拟机栈Java方法执行的内存模型,用于存储局部变量标、操作数栈、动态链接、方法出口等信息虚拟机栈也是线程私有局部变量表所需的内存控件在
小万哥 小万哥
10个月前
C 语言指针完全指南:创建、解除引用、指针与数组关系解析
C语言中的指针创建指针我们可以使用引用运算符&获取变量的内存地址:cintmyAge43;//一个int变量printf("%d",myAge);//输出myAge的值(43)printf("%p",&myAge);//输出myAge的内存地址(0x7ff