Executor(1) 从JDK5 开始提供Executor FrameWork(java.util.concurrent.\ ) 分离任务和创建和执行者的创建 线程重复利用(new线程代价很大) 理解 共享线程池 的概念 预设好的多个Thread, 可弹性增加 多次执行很多很小的任务 任务创建和执 ...
分类:
编程语言 时间:
2020-04-18 16:02:01
阅读次数:
86
面试,难还是不难?最终结果好还是不好?取决于面试者的底蕴(气场+技能)、心态和认知以及沟通技巧。而一些主流的大型互联网公司面试(阿里巴巴、京东、美团、滴滴)更是需要你在面试时展现出自己的能力,从而获得面试官的欣赏和肯定。 而程序员在应聘时更是需要经历层层面试。俗话说,磨刀不误砍柴工,做好面试前的准备 ...
分类:
编程语言 时间:
2020-04-18 15:41:34
阅读次数:
123
一、什么是线程池 创建和销毁对象是非常耗费时间的 创建对象:需要分配内存等资源 销毁对象:虽然不需要程序员操心,但是垃圾回收器会在后台一直跟踪并销毁 对于经常创建和销毁、使用量特别大的资源,比如并发情况下的线程,对性能影响很大。 思路:创建好多个线程,放入线程池中,使用时直接获取引用,不使用时放回池 ...
分类:
编程语言 时间:
2020-04-17 17:22:03
阅读次数:
79
第一章 等待唤醒机制 1.1 线程间通信 多个线程在处理同一个资源,但是处理的动作(线程的任务)却不相同,多个线程之间的协同通信。 1.2 等待唤醒机制 等待唤醒机制就是用于解决线程间通信的问题的,使用到的3个方法的含义如下: wait:线程不再活动,不再参与调度,进入 wait set 中,因此不 ...
分类:
编程语言 时间:
2020-04-17 15:28:13
阅读次数:
79
服务隔离介绍 当大多数人在使用Tomcat时,多个HTTP服务会共享一个线程池,假设其中一个HTTP服务访问的数据库响应非常慢,这将造成服务响应时间延迟增加,大多数线程阻塞等待数据响应返回,导致整个Tomcat线程池都被该服务占用,甚至拖垮整个Tomcat。因此,如果我们能把不同HTTP服务隔离到不 ...
分类:
编程语言 时间:
2020-04-17 00:21:02
阅读次数:
225
缘由 之前写socket的CS模型代码,都是利用最原始的多线程方式。服务端是主线程,接到客户端的连接请求就从线程池中获取一个线程去处理整个socket连接的所有操作,虽然在连接数较短的情况下没有什么影响,但是当连接数很大的情况下,线程的切换和线程池的大小问题就明显起来了。 问题 应该存在一种方式可以 ...
分类:
其他好文 时间:
2020-04-16 19:46:40
阅读次数:
79
1.阿里巴巴java规约推荐使用java线程池ThreadPoolExecutor service = new ThreadPoolExecutor(5, 200, 0L, TimeUnit.MILLISECONDS, new LinkedBlockingQueue<>(1024), new Thr ...
分类:
编程语言 时间:
2020-04-16 19:43:46
阅读次数:
80
Java-五种线程池,四种拒绝策略,三种阻塞队列 三种阻塞队列: BlockingQueue<Runnable> workQueue = null; workQueue = new ArrayBlockingQueue<>(5);//基于数组的先进先出队列,有界 workQueue = new Li ...
分类:
编程语言 时间:
2020-04-16 19:32:41
阅读次数:
70
普通方法:爬取梨视频 import re import time import random import requests from lxml import etree start_time = time.time() url = "https://www.pearvideo.com/catego ...
分类:
编程语言 时间:
2020-04-15 21:26:23
阅读次数:
109
newFixedThreadPool @Slf4j public class TheadPoolDemo { private static ThreadPoolExecutor threadPool = (ThreadPoolExecutor) Executors.newFixedThreadPoo ...
分类:
编程语言 时间:
2020-04-15 00:30:38
阅读次数:
68