文章524
标签277
分类67
感谢一直以来支持我的那些人

感谢一直以来支持我的那些人

最近微信上有不少人加我好友说我文章写的不错,感谢大家的支持。张小凯会继续努力学习的,也希望能和大家一起交流❤

当然文章可能存在问题,希望大家在文章下面批评指正!


关于协程的一些思考

关于协程的一些思考

在Java开发中,并发编程是一个不可或缺的东西。甚至有不会并发就相当于不会编程的言论。传统并发模型中有进程和线程的概念,而熟悉Python的同学应该有过使用yield的经历,而yield关键字就使用了协程的概念;并且在现在golang大火的环境下,golang中也通过协程来解决了并发编程的问题;

本文内容包括:

  • 什么是协程
  • 协程和线程的区别
  • 为什么需要协程
  • 协程的由来
  • 协程的实现原理
  • 协程的好处
  • Java中的协程

最近一些面试经历的总结

最近一些面试经历的总结

最近相继面试了BAT(字节, 阿里, 腾讯)的实习生, 收获满满. 在这里总结一下


深入理解AQS实现原理

深入理解AQS实现原理

AQS全称为AbstractQueuedSynchronizer,它提供了一个FIFO队列,可以看成是一个用来实现同步锁以及其他涉及到同步功能的核心组件

本文内容包括:


Java阻塞队列

Java阻塞队列

前面讲解了线程池的原理, 而线程池任务的存储采用的是阻塞队列(需要的话要通过构造方法传入一个阻塞队列). 所以本篇介绍Java中的阻塞队列

在JUC包中,BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题, 通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利

本文详细介绍了BlockingQueue家庭中的所有成员,包括他们各自的功能以及常见使用场景

本文内容包括:

  • 初识阻塞队列
  • 阻塞队列的成员
  • 阻塞队列原理及使用
    • DelayQueue
    • ArrayBlockingQueue
    • LinkedBlockingQueue

文章转自: Java 阻塞队列–BlockingQueue


分享几个直播源地址

分享几个直播源地址

有的人问我怎么在手机上看类似于电视台(甚至是国外电视台)的节目, 其实很简单哈. 只要有一个能接收数据源的软件和数据源链接就可以了


推荐一个查看网页开发用到的技术的浏览器插件Wappalyzer

推荐一个查看网页开发用到的技术的浏览器插件Wappalyzer

在访问网站的时候, 经常想知道这个网站是用什么技术实现的. 尤其是现在npm仓库的前端框架五花八门的今天;

所以推荐给大家一个查看网页开发用到的技术的浏览器插件Wappalyzer

如果觉得文章写的不错, 可以关注微信公众号: Coder张小凯

内容和博客同步更新~


Java线程池ThreadPoolExecutor分析与实战终

Java线程池ThreadPoolExecutor分析与实战终

前面两篇文章分析了Java中几种常见的线程池, 下面我们通过源码来看一看他们究竟在最底层是怎么实现的

本文内容包括:

  • ctl属性;
  • ThreadPoolExecutor中其他属性;
  • 任务提交的实现;
  • 内部类Worker(任务执行, 终止)
  • 线程池终止
  • 线程池的监控
  • 线程池的安排

源代码分析基于JDK11.0.5

如果觉得文章写的不错, 可以关注微信公众号: Coder张小凯

内容和博客同步更新~


系列文章入口:


Java线程池ThreadPoolExecutor分析与实战续

Java线程池ThreadPoolExecutor分析与实战续

在上一篇Java线程池ThreadPoolExecutor分析与实战的文章中, 手写了一个简单的线程池. 这篇紧接着上一篇, 通过分析JUC线程池源码, 来看看JDK中是如何设计线程池的

本文内容包括:

  • Executor接口
    • Executor接口源码分析
    • Executor两级调度模型
    • Executor结构
  • ExecutorService接口源码分析
  • AbstractExecutorService抽象类源码分析
  • 四种类型的线程池
    • ThreadPoolExecutor提供的构造函数
    • 线程池的处理流程
    • 四种线程池(Fixed, Cached, Single, Scheduled
    • 如何选择合适的线程池

文章部分节选自: Java线程池-ThreadPoolExecutor原理分析与实战

源代码分析基于JDK11.0.5

如果觉得文章写的不错, 可以关注微信公众号: Coder张小凯

内容和博客同步更新~


记一次Github仓库重构

记一次Github仓库重构

今天打算投稿给HelloGitHub一个仓库, 所以把一个仓库重构了代码, 创建了大量分支. 可惜最后还是没有被录用. 没事, 继续努力吧~

源代码: https://github.com/JasonkayZK/Java_Samples