JUC
文章平均质量分 67
SuperDeyang
一起学习,一起进步。
展开
-
四大函数式接口及Stream流式编程
一:什么是函数式接口? 只包含一个抽象方法的接口,称为函数式接口; 函数式接口可以通过Lambda表达式来创建该接口的对象。(若Lambda表达式抛出一个受检异常,那么该异常需要在目标接口的抽象方法上进行声明); 在任意函数式接口上使用@FunctionalInterface注解,这样做可以检查它是否是一个函数式接口,同时javadoc也会包含一条声明,说明这个接口是一个函数式接口。 比如我们常见的与线程有关的接口Runnable接口就是函数式接口,代码如下: @FunctionalInterface原创 2021-05-10 16:05:01 · 465 阅读 · 0 评论 -
线程池的三大方法七大参数和四大拒绝策略
一:什么是线程池? java.util.concurrent.Executors提供了一个 java.util.concurrent.Executor接口的实现用于创建线程池,多线程技术主要解决处理器单元内多个线程执行的问题,它可以显著减少处理器单元的闲置时间,增加处理器单元的吞吐能力。 机器完成一项任务所需时间为:创建线程时间t1,执行任务的时间t2, 销毁线程时间t3;如果t1 + t3 远大于 t2,则可以采用线程池,以提高服务器性能。线程池技术主要关注于线程的创建和销毁时间,把创建时间和销毁时间分别原创 2021-05-10 16:04:28 · 367 阅读 · 0 评论 -
多线程中的锁(生产者消费者问题)
一:Synchronized锁机制 synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程运行到这个方法时,都要检查有没有其它线程正在用这个方法(或者该类的其他同步方法),有的话要等正在使用synchronized方法的线程运行完这个方法后再运行此线程,没有的话,锁定调用者,然后直接运行。它包括两种用法:synchronized 方法和 synchronized 块。 如下例子: public class pc_synchronized { public static void原创 2021-05-10 16:03:34 · 357 阅读 · 0 评论 -
多线程基础
一:什么是多线程? 线程是操作系统能够进行运算调度的最小单位;它被包含在进程之中,是进程中的实际运作单位。多线程,是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。简单来说:线程是程序中一个单一的顺序控制流程;而多线程就是在单个程序中同时运行多个线程来完成不同的工作。多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。多线程是在同一时间需要完成多项任务的时候实现的。 二:多线程原创 2021-05-10 16:01:33 · 69 阅读 · 0 评论