编程语言:Java
Java NIO浅析
本文从NIO原理的角度出发,讲解其解决线程池瓶颈、处理海量连接之道,并结合在服务端和客户端的使用方式描述其优势,最后会讲一些NIO的高级主题。
逆天:蘑菇街下单平台演进,从PHP到Java
蘑菇街下单平台演进 | 朱伟 | 中生代技术分享第二十三期
Java程序员的日常——经验贴
工作当中遇到的事情比较杂,因此涉及的知识点也很多。这里暂且记录一下,今天遇到的知识点,纯干货~ 关于文件的解压和压缩 如果你的系统不支持tar z命令 如果是古老的Unix系统,可能并不认识tar z命令,因此如果你想要压缩或者解压tar.gz的文件,就需要使用gzip或者gunzip以及tar命令
Java中的多线程你只要看这一篇就够了
引 如果对什么是线程、什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内。 用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都...
Java进阶之 JDK动态代理与Cglib动态代理
一、动态代理概述: 与静态代理对照(关于静态代理的介绍 可以阅读上一篇:JAVA设计模式之 代理模式【Proxy Pattern】), 动态代理类的字节码是在程序运行时由Java反射机制动态生成。
Java HashMap工作原理及实现
- 概述从本文你可以学习到: 什么时候会使用HashMap?他有什么特点? 你知道HashMap的工作原理吗? 你知道get和put的原理吗?equals()和hashCode()的都有什么作用? 你知道hash的实现吗?为什么要这样实现? 如果HashMap的大小超过了负载因子(load factor)定义的容量,怎么办? 当我们执行下面的操作时: 123456789101112Has
浅谈Java中的锁
锁在并发编程中的重要性不言而喻, 但是如何更好地选择, 下面借几个问答来开始吧! 后续我会再写一篇有关于无锁队列的Blog
Java GC 调优
Linux, Rust
Java常用分析工具之jmap
jmap是JDK中提供的一个用来监视进程运行中的jvm物理内存的占用情况的工具。该进程内存内,所有对象的情况,例如产生了哪些对象,对象数量。当系统崩溃时,jmap 可以从core文件或进程中获得内存的具体匹配情况,包括Heap size, Perm size等。 使用jmap会影响
Java内存模型
Java内存模型(Java Memory Model)是一组类似硬件体系结构内存模型的规范,这些规范描述了Java语言编写多线程程序的语义,这些语义可以解决多线程对共享变量读写时的可见性、原子性和有序性问题。 背景 在Java之前的编程语言(例如C,C++)直接使用操作系统的内存模型,不同平台的差异性会导致程序出现运行结果不一致或者移植性问题。为了屏蔽不同平台的底层差异,实现“一次编写,到处运行(
Java并发面试题整理
Wait() 和 sleep()的比较wait() 和 sleep()都可以使线程阻塞,它们的区别如下: wait是Object的方法,而sleep是Thread类的静态方法 sleep使线程阻塞指定时间,这段时间当前线程让出CPU时间,时间结束后继续执行,该过程不释放线程持有的对象锁;wait方法被调用后线程释放持有的锁并进入该锁的等待队列,当收到持有锁的其它线程释放notify或notify