自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

无界编程

我是Oracle Java JCP会员 博客域名 https://linuxstyle.blog.csdn.net/

  • 博客(19)
  • 资源 (20)
  • 收藏
  • 关注

原创 异步编程原理以及Java实现

说实话多线程和异步是非常容易让人混淆的,好像产生的效果差不多,甚至有人称多线程为异步,实际上这两种技术背后的实现原理是不同的。 假设您有2个任务,不涉及任何IO(在多处理器机器上)。在这种情况下,线程优于Async。因为像单线程程序一样的Async按顺序执行你的任务。但是线程可以同时执行这两个任务。 假设您有2个任务,涉及IO(在多处理器机器上)。在这种情况下,Async和Thre...

2019-03-30 14:16:11 14594 4

原创 从Jdk8到Jdk12的Java虚拟机垃圾回收(垃圾收集)相关论文和官方网站集锦

JVM架构图《Java Program Execution Process in Detail | Working of JUST-IT-TIME Compiler (JIT) in Detail》----这张图微观画的很好:https://www.javainterviewpoint.com/java-virtual-machine-architecture-in-java/...

2019-03-24 03:00:23 6744 2

原创 Go语言源码分析CAS的实现和Java如出一辙

看了Go的源码CAS这块实现和java还是类似的。关于Java的分析参考:Java使用字节码和汇编语言同步分析volatile,synchronized的底层实现都是使用汇编指令:LOCK+CMPXCHGL原因很简单:单核肯定不能发挥Go的高并发性能,Go如果要支持多核,必然遇到并发编程数据可见性的问题,底层必然加锁。无锁并不等于没有锁,只能说无重量级的锁而已。Go语言源...

2019-03-27 20:41:02 2044

原创 Java中的ClassLoader和SPI机制

深入探讨 Java 类加载器成富是著名的Java专家,在IBM技术网站发表很多Java好文,也有著作。线程上下文类加载器线程上下文类加载器(context class loader)是从 JDK 1.2 开始引入的。类java.lang.Thread中的方法getContextClassLoader()和setContextClassLoader(ClassLoader cl)用...

2019-03-27 20:10:31 3371

原创 一个会画图的工程师

发现小谢图画的很好,虽然有些也是他引用的,但是我觉得还是很好所以这里收集下。【RocketMQ源码学习】2-Namesrv3-Remoting模块rocketmq-remoting 模块是 RocketMQ 中负责网络通信的模块,被其他所有需要网络通信的模块依赖。它是基于 Netty 实现的,避免了网络编程很多 tricky 的问题。首先来看下 RocketMQ Net...

2019-03-27 19:05:28 1326

原创 协程和Java实现

多线程的性能问题:1.同步锁。2.线程阻塞状态和可运行状态之间的切换。3.线程上下文的切换。协程,英文Coroutines,是一种比线程更加轻量级的存在。正如一个进程可以拥有多个线程一样,一个线程也可以拥有多个协程。协程,又称微线程,纤程。英文名Coroutine。最大的优势就是协程极高的执行效率。因为子程序切换不是线程切换,而是由程序自身控制,因此,没有线程切换的开销,...

2019-03-27 16:56:37 4505 1

原创 Jdk11,Jdk12的低延迟垃圾收集器ZGC

https://wiki.openjdk.java.net/display/zgc/MainZ垃圾收集器,也称为ZGC,是一种可扩展的低延迟垃圾收集器,旨在实现以下目标:暂停时间不超过10毫秒 暂停时间不会随堆或实时设置大小而增加 处理堆范围从几百M到几T字节大小一目了然,ZGC是:同时 基于区域的 压实 NUMA感知 使用彩色指针 使用负载障碍ZGC的核心是并发垃圾...

2019-03-27 11:49:12 3466

原创 stackoverflow上一个最会举例子的专家

https://stackoverflow.com/Premraj是stackoverflow上一个一个最会举例子的专家,我特意收集了他的一些有趣的举例:Java弱引用最精彩的解释https://stackoverflow.com/questions/299659/whats-the-difference-between-softreference-and-weakreference-...

2019-03-26 16:24:52 1617 1

原创 Java弱引用最精彩的解释

原文出自:https://stackoverflow.com/questions/299659/whats-the-difference-between-softreference-and-weakreference-in-java这个解释是关于弱引用最精彩的public class EmployeeVal { public EmployeeVal(String ...

2019-03-26 11:54:35 10394 4

原创 JSR 133 Java内存模型以及并发编程的最权威论文汇总

Java内存模型先看官方文档:https://docs.oracle.com/javase/specs/JSR 133:JavaTM内存模型和线程规范修订版:https://www.jcp.org/en/jsr/detail?id=133JSR:Java规范请求所有JSR的列表:https://jcp.org/en/jsr/allhttps://www.jcp.org...

2019-03-24 01:26:16 1717

原创 Java12和Jdk12安装以及OpenJdk12源码

文档:JDK 12文档:https://docs.oracle.com/en/java/javase/12/下载:OracleJDK12下载:https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.htmlcsdn上我下好的,速度较快:https://download.csdn...

2019-03-23 14:12:39 20934 15

原创 Redis源码和java jdk源码中hashcode的不同实现

一.redis实际上是使用了siphash这个比较简单,我说的简单是指redis代码比较少不像jdk一样调用C++代码调用栈非常深。先看这个rehashing.c主要就是dictKeyHash函数,需要调用dict.h头文件中定义的dictGenHashFunction#include "redis.h"#include "dict.h"void _redisAssert(...

2019-03-22 19:49:26 2210

原创 更好的Java虚拟机Zing: 更好的性能,无停顿,更快的启动

Zing虚拟机文档Understanding Java Garbage Collection(了解Java垃圾收集)首先说明这个Zing是收费的,但是他也是优秀的,我觉得我们可以研究下他的一些思想对于怎么提高JVM,以及目前的JVM有什么缺陷是非常有帮助的。中文版简介:https://cn.azul.com/Zing的优势:1)更好的性能支持 Zing 的 Falc...

2019-03-19 17:57:52 10770

原创 为什么选择RocketMQ以及Confluent公司对Kafka的分区设计的说明

《为什么选择RocketMQ》根据我们的研究,随着使用的队列和虚拟主题的增加,ActiveMQ IO模块遇到了瓶颈。我们尽力通过节流,断路器或降级解决这个问题,但效果不佳。因此,我们开始关注当时流行的消息传递解决方案Kafka。不幸的是,Kafka无法满足我们的要求,特别是在低延迟和高可靠性方面,详见此处。《如何在RocketMQ中支持更多队列?》Kafka是一个分布式流媒体平台,它源...

2019-03-19 01:27:33 2765 1

原创 Java使用字节码和汇编语言同步分析volatile,synchronized的底层实现

关于怎么查看字节码的五种方法参考本人另一篇文章《Java以及IDEA下查看字节码的五种方法》查看汇编语言汇编码说要看汇编还是很有必要的,因为有些地方比如加锁其实还是通过汇编实现的,只看字节码不能看出底层实现。其实就是利用使用hsdis与jitwatch查看JIT后的汇编码。1.首先下载hsids要查看JIT生成的汇编代码,要先装一个反汇编器:hsdis。从名字来看,即HotS...

2019-03-15 13:18:09 7414 4

原创 JDK源码研究Jstack,JMap,threaddump,dumpheap的原理

JDK最新bug和任务领取:https://bugs.openjdk.java.net/projects/JDK/issues参加OpenJDK社区:https://bugs.openjdk.java.net/projects/JDK/issuesopenjdk源码地址:https://jdk.java.net/java-se-ri/8https://download.java.n...

2019-03-13 19:53:11 1948

原创 IDEA实用插件和技巧

《解决lambda expressions are not supported at this language level的问题》《Intellij Idea 代码格式化/保存时自动格式化》一、安装google-java-formatpreferences -> plugins -> Browse repositories…搜索google-java-format...

2019-03-09 16:53:06 1050

原创 Java以及IDEA下查看字节码的五种方法

1.最本质的是cmd下#javap -v 类名说明:这是最原始的方法,效率低下,强烈不推荐使用。2.查看字节码的方法idea可以集成命令行使用javap注意需要在class文件目录下,不要在java文件目录下。#java -p class文件名即可这种方式需要每次敲命令还是不方便3.在IDEA下集成javap -v上面那种方法效率只能说还是不高,其...

2019-03-08 15:26:11 32529 2

原创 Java字节码研究

关于怎么查看字节码的五种方法参考本人另一篇文章《Java以及IDEA下查看字节码的五种方法》1.String和常连池先上代码:public class TestApp { public static void main(String[] args) { String s1 = "abc"; String s2 = new S...

2019-03-05 18:46:45 5282 2

数据结构与算法分析 Java语言描述(第3版)源码

经典教材 数据结构与算法分析_Java语言描述(第3版)源码 可以直接下载运行

2019-05-03

jdk-12_windows-x64_bin.exe和安装说明

jdk-12_windows-x64_bin.exe和安装说明,有截图一步一步照着做就行,IDEA下怎么安装需要注意的都写清楚了。

2019-03-23

Zing虚拟机文档Understanding Java Garbage Collection(了解Java垃圾收集)

WP - Understanding Java Garbage Collection(了解Java垃圾收集).pdf WP - C4(C4:连续并发压缩收集器).pdf WP - JVM Performance Study(JVM性能研究使用Apache Cassandra™比较OracleHotSpot®和AzulZing®).pdf

2019-03-19

JDK源码 openjdk-8u40-src-b25-10_feb_2015.zip

jdk1.8源码 这是从官方网站下载 请放心使用 openjdk和oracle jdk并无太大差异

2019-03-17

EncodingDetect.java

由于文件编码类型众多,例如UTF-8,GBK,UTF-16,GB2312等等,识别文件编码类型,使用方法参考此文:http://blog.csdn.net/21aspnet/article/details/50612867

2016-01-30

FreeTDS-0.95版

FreeTDS最新版本支持SqlServer2008,注意网上的FreeTDS0.91不支持--with-tdsver=7.1以上的SqlServer配置,也就是是说--with-SqlServer2005/2008在FreeTDS0.91下和2000是一样的驱动。

2015-08-13

freetds-0.91.tar.gz

Linux 环境 PHP 调用 Sqlserver

2015-08-12

计算机网络 第五版 带书签 谢希仁版

经典计算机书籍,带书签,文件也不大,非常清晰

2013-10-22

linux0.01代码

linux0.01代码,只有10000行左右,可以在redhat7.3下可成功编译,可以学到linux的优秀思想

2012-12-08

Bz1621.lzh二进制编译器

二进制编译器,是一种可以直接对二进制数编辑的软件

2012-11-16

图片和js代码

图片和js代码

2007-05-14

图片和js代码.rar

图片和js代码.rar

2007-05-14

图片和日历.rar

图片和日历.rar图片和日历.rar

2007-05-14

日历和时间钟

日历和时间钟

2007-05-14

clock.swf

clock.swf

2007-05-14

calendar.js

calendar.js

2007-05-14

wnl.js

wnl.js

2007-05-14

calendar.js

calendar.js

2007-05-14

梅花雨日历1

梅花雨日历1

2007-05-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除