自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

流星1688

0基础进入开发的点点滴滴

  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 并发编程(十)-ScheduledThreadPoolExecutor源码分析

ScheduledThreadPoolExecutor 是 Java 中的一个线程池实现,它继承自 ThreadPoolExecutor 类,并实现了 ScheduledExecutorService 接口,ScheduledThreadPoolExecutor内部维护了一个任务队列和一组线程,可以执行周期性和延迟性任务,并且可以动态地调整线程池的大小。

2023-04-07 21:18:02 400

原创 并发编程(九)-ScheduledExecutorService源码分析

ScheduledExecutorService 是 Java 并发包中提供的一个接口,继承ExecutorService接口,是Executor框架的一个扩展。它可以用于调度任务在指定的时间或周期性地执行。相比于 Timer 和 TimerTask,ScheduledExecutorService 提供了更加灵活的任务调度机制,可以控制任务的取消、延迟、周期等,同时也支持并发执行多个任务。

2023-03-28 08:30:00 1328

原创 并发编程(八)-Executors源码分析

Executors是Java标准库中的一个工具类,用于管理和创建线程池。可以更加方便地管理线程的创建、调度和回收,达到简化多线程编程的目的。

2023-03-27 09:00:00 424

原创 并发编程(七)-ThreadPoolExecutor源码分析(二)

如果允许核心线程超时回收,或者当前线程池中正在运行的 Worker 线程数大于核心线程数,则将 timed 设为 true,表示当前线程池中的 Worker 线程需要被回收。如果线程池的运行状态为SHUTDOWN以下,或者运行状态为SHUTDOWN且要添加的任务为null,则将新的工作线程添加到工作线程列表workers中,并更新最大线程池大小largestPoolSize。获取Worker对象中的锁,如果线程池处于STOP状态或者线程被中断并且线程池处于STOP状态或者线程被中断,则中断该线程。

2023-03-26 08:52:00 447

原创 并发编程(七)-ThreadPoolExecutor源码分析(一)

拒绝策略是一种处理无法添加到线程池的任务的方法,通过拒绝策略,我们可以决定如何处理任务,例如抛出异常、直接丢弃任务、阻塞任务、将任务交给调用线程执行等等。线程池中的线程可以执行提交的任务,通过统一管理和复用线程,可以避免频繁创建和销毁线程,从而减少了线程创建和销毁的开销,提高了程序的性能。提高程序的可扩展性:通过调整线程池的参数和使用不同的队列和策略,可以灵活地配置线程池,满足不同的需求,提高了程序的可扩展性。SHUTDOWN 状态可以在工作队列和线程池均为空时转换为 TIDYING 状态。

2023-03-25 08:00:00 395

原创 并发编程(六)-AbstractExecutorService源码分析

AbstractExecutorService是一个抽象类,实现了ExecutorService接口,提供了线程池的基本实现。它是Java Executor框架的核心类,提供了线程池的基本操作,如提交任务、管理线程池、执行任务等。

2023-03-24 21:15:55 695 1

原创 并发编程(五)-ExecutorService源码分析

ExecutorService 是 Java 中的一个接口,它扩展了 Executor 接口,并提供了更多的方法来处理多线程任务。它是 Java 中用于执行多线程任务的框架之一,可以创建一个线程池,将多个任务提交到线程池中执行。ExecutorService 接口提供了许多方法,如 shutdown()、shutdownNow()、submit()、execute()、invokeAll() 等,可以更方便地提交任务、执行任务、关闭线程池等操作。

2023-03-23 08:00:00 1215

原创 并发编程(四)-InheritableThreadLocal 源码分析

这意味着,当一个线程创建了一个子线程时,子线程可以访问父线程中的 InheritableThreadLocal 变量的值,而不是创建一个新的变量。childValue(T parentValue) 方法:该方法是一个回调方法,用于在子线程中创建该变量的值。在 Web 应用程序中,将用户信息存储在 InheritableThreadLocal 变量中,这样在处理用户请求的过程中,不同的线程都可以访问到用户信息,而且在子线程中也可以继承父线程的用户信息,从而避免了在不同的线程中反复传递用户信息的麻烦。

2023-03-22 08:00:00 234

原创 并发编程(三)-ThreadLocal源码分析(二)

否则,返回 null。:属性的主要作用是用于哈希表的扩容。如果找到了一个Entry对象,且该对象对应的ThreadLocal对象与key相等,则说明找到了要替换的Entry对象,将其值赋值为value,并将其和staleSlot位置上的Entry对象交换位置,然后调用expungeStaleEntry方法删除slotToExpunge和之后的过期Entry对象。该操作可以用于在当前线程中创建一个新的ThreadLocalMap对象,并将父线程中的数据复制到新的对象中,以便新线程可以访问父线程中存储的数据。

2023-03-21 21:54:23 380

原创 并发编程(三)-ThreadLocal源码分析(一)

如果ThreadLocalMap对象不存在,说明当前线程还没有ThreadLocalMap对象,此时需要使用createMap方法为其创建一个ThreadLocalMap对象,并将ThreadLocal对象和初始值保存到其中。如果ThreadLocalMap对象不存在,说明当前线程还没有ThreadLocalMap对象,此时需要使用createMap方法为其创建一个ThreadLocalMap对象,并将ThreadLocal对象和值保存到其中。用于获取当前线程中ThreadLocal对象对应的值。

2023-03-20 22:17:32 202

原创 并发编程(二)-ThreadGroup 源码分析

编发编程,ThreadGroup源码分析

2023-03-19 14:11:19 319 1

原创 并发编程(一)-Thread 源码分析

Thread源码分析,通过注释+流程图,分析源码过程

2023-03-19 13:55:00 626

原创 spring配置缓存(一)

spring配置缓存

2016-12-30 13:33:40 388

转载 Maven实战:pom.xml与settings.xml

Maven实战:pom.xml与settings.xml

2016-12-29 13:35:11 379

原创 tomcat指定jdk

tomcat指定jdk

2016-11-04 10:23:34 487

原创 spring+junit进行单元测试

如何在spring中,用注解进行junit单元测试

2016-09-12 14:11:09 248

原创 jquery-tips悬浮提示插件说明

jquery-tips悬浮提示插件说明

2016-09-05 14:34:23 3185

原创 eclispe中的maven项目使用spring报java.lang.ClassNotFoundException: org.springframework.web.c

maven项目运行时报: java.lang.ClassNotFoundException: org.springfraork.web.context.ContextLoaderListenermew

2016-09-05 10:03:43 358

原创 mybaits开发之通用 dao层编写

springmvc +mybatis 优化开发

2016-08-30 14:13:31 3509 2

原创 导入maven项目pom.xml文件报错

导入maven项目pom.xml文件报错

2016-08-23 13:12:51 3455 1

原创 mybatis之annotation(二)

mybatis 之annotation注解,结果映射

2016-07-19 13:02:46 790

原创 mybatis之annotation(一)

mybatis的annotation是在映射器Mapper接口上面使用的,下面详细介绍下使用方式。

2016-07-19 10:45:58 2151

原创 mybatis之 SqlSessionFactory单例创建

mybatis的sqlSessionFactory单例创建

2016-07-13 16:01:57 4265

原创 mybatis之mybatis-config.xml 配置详解

mybatis之xml配置信息详解

2016-07-12 14:25:56 41364

转载 单例模式之四种线程安全的实现

singleton模式四种线程安全的实现

2016-07-11 13:39:25 494

转载 Java程序员修炼之路

java修炼之道,使你在各个阶段不在迷茫。

2016-07-06 15:57:36 514

原创 centos7 安装部署redis-3.2.1

在centos7下安装redis-3.2.1版本

2016-07-06 15:06:41 859

原创 centos7 安装mysql5.6

centos7环境下安装mysql,以及相关配置

2016-07-06 14:25:29 349

原创 centos7 安装jdk1.7

centos7系统下安装jdk1.7

2016-07-06 13:34:55 1891

原创 centos7 安装Tomcat7

centos7 系统下,教你一步一步安装tomcat7,

2016-07-06 10:07:26 515

原创 hibernate性能优化

hibernate性能优化

2016-04-22 14:27:43 380

全国邮编 根据县城 查询邮编

纯js,全国邮编查询,希望能帮助到你们。

2015-09-18

mybatis文档

mybatis说明使用,让你从零开始,学习怎么去使用mybatis 开发

2015-03-22

空空如也

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

TA关注的人

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