Java提供了多种同步机制,比如AtomicLong、LongAdder、ReentrantLock等,但是他们的性能到底如何?网上也有一些性能测试文章,但是要么同步机制不全,要么场景不全,因此笔者设计了一个性能测试框架,支持多场景、多种同步机制的性能测试,代码请参见locksbenchmark,后续有时间了再通过JMH进行对比测试。

Read More

哈哈,有点儿标题党。昨天“极客时间”APP给我推送了一份专属的学习报告,看到一个数据很有意思:我全年在这个APP上只学习了39天,但却超过了80%的人。再次证明,以现在大家的努力程度,还真没有到拼智商的时候。2020已经到来,希望自己每天能够坚持学习,不求超越别人,但求每天能看到不一样的自己。

Read More

昨天,微软为基于Chromium内核的Edge浏览器发布了新的logo,新logo很漂亮,变化也很大,可能表明了微软要重新收复失地的决心吧。本文主要介绍一点儿微软浏览器的变迁史,由于个人认知有限,只能称为简史。

Read More

最近这几天,沉寂已久的区块链突然火了起来,各种文章铺天盖地,起因是,10月24号习大大把区块链技术提升到国家高度,希望借此技术能够实现弯道超车。说起区块链,不得不提比特币,前几年比特币大火,也带火了区块链技术,笔者还曾长时间跟进一个区块链创新项目storj。当时也简单了解过背后的原理,其实,对于现在的码农来说,区块链技术并不神秘,我们每天在用的git就跟它比较相似。本文就来简单对比下这两种技术的异同。

Read More

近朱者赤,近墨者黑,看一个人经常跟什么人来往,就可以大致推算出这个人的水平。在机器学习领域,有一个采用类似思想实现的算法,那便是KNN(K-Nearest Neighbor),即K近邻算法,其中K是关键参数。该算法比较简单,本文简单介绍如何从零开始实现这个算法,以便加深对算法的理解。

Read More