
Java基础
文章平均质量分 94
java基础
安倾i
这个作者很懒,什么都没留下…
展开
-
事务(ACID)
事务的原理一个线程在当前只能执行一个方法就是说只能串行执行,先执行完方法A才能执行方法B,如果A、B同时执行了,那就是多线程了。如果要对多线程同时操作某一方法加以限制,那就在方法前加个同步就OK了。一个进程包含多个线程 每个线程在当前只能执行线程中的一个方法,按串行执行。多个线程访问同一个数据库中的数据时,要对这个数据加锁,保证当前只能由一个线程获取并执行这个数据。或者对多个线程的方法加事务。事务的本质是使用了数据库中默认自带的锁事务是为了解决并发问题,是为了解决2个线程中的方法对同一个数据原创 2020-08-29 22:12:50 · 316 阅读 · 0 评论 -
JVM内存组成
为什么学习虚拟机对于Java程序员来说,在虚拟机自动内存管理机制的帮助下,不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出问题。java程序员把控制内存的权利交给了java虚拟机,一旦出现内存泄漏和溢出方面的问题,如果不了解虚拟机是怎样使用内存的,那排查错误、修正问题将会成为一项异常艰难的工作。Java虚拟机内存的各个区域,这些区域的作用、服务对象以及其中可能产生的的问题?运行时数据区域java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个原创 2020-08-29 21:47:15 · 234 阅读 · 0 评论 -
锁机制(悲观锁乐观锁)
锁概念当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取统一数据的情况。若对并发操作不加控制就可能会读取和存储不正确的数据,破坏数据库的一致性。所以,锁主要用于处理并发问题 。从数据库系统角度分为三种:排他锁、共享锁、更新锁。 从程序员角度分为两种:一种是悲观锁、一种乐观锁。悲观锁总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁。传统的关系数据库里用到了很多这种锁机制,比如按使用性原创 2020-08-29 21:14:11 · 923 阅读 · 0 评论 -
HashMap的底层原理
参考链接hashmap的底层原理 https://zhuanlan.zhihu.com/p/79507868解决hash冲突的理解 https://blog.youkuaiyun.com/qq_41864321/article/details/93920730HashMap的原理HashMap 其实是一个数组+(链表或红黑树)的数据结构如果两个不同对象的hashCode相同,这种现象称为hash冲突。所以本质上hashmap下的链表和红黑树下除了首结点其他就是hash冲突的键值对 也就是hashcode是一原创 2020-08-28 02:30:40 · 911 阅读 · 0 评论