并发 多线程
并发 多线程
Ethe'
这个作者很懒,什么都没留下…
展开
-
线程外部 干扰
package com.test1;/*** 终止线程* 1、线程正常执行完毕-->次数* 2、外部干涉 -->加入标识* 不要使用stop destroy**/public class TerminateThread implements Runnable { private String name; public TerminateT...原创 2020-01-09 20:12:34 · 167 阅读 · 0 评论 -
使用Lambda 实现 Thread
使用Lambda 来实现public class LambdaTest04 { public static void main(String[] args) { new Thread(()->{ for(int i=0;i<100;i++) { System.out...原创 2020-01-09 19:28:52 · 5642 阅读 · 0 评论 -
并发编程(五) 可重入锁
可重入锁锁作为并发共享 保证数据一致性的工具,大多数内置锁都是可以重入的,也就是说,如果某个线程试图获取一个已经由它自己持有的锁的时候,那么这个请求会立即成功,并且会将这个锁的计数值加一,而当线程退出同步代码块时,计数器将会递减,当计数值等于0时,锁释放。如果没有可重入锁的支持,在第二次企图获得锁时将会进入死锁状态。...原创 2019-12-31 23:06:24 · 164 阅读 · 0 评论 -
并发编程(四)线程池
Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程。newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待。newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行。newS...原创 2019-12-26 14:52:31 · 142 阅读 · 0 评论 -
并发编程(一) Thread类的API总结
Thread 类是java中的线程类,提供给用户用于创建、操作线程、获取线程的信息的类。是java线程一切的基础,掌握这个类是非常必须的,先来看一下它的API;1、字段摘要static int MAX_PRIORITY :线程可以具有的最高优先级。static int MIN_PRIORITY :线程可以具有的最低优先级。static int NORM_PRIORITY :分配给线程的默认...原创 2019-11-15 17:04:14 · 177 阅读 · 0 评论 -
并发编程(二) 线程的状态
在java中,线程的状态其实是六种,对应着枚举类型 Thread.State 的六个枚举常量:NEW 、BLOCKED、RUNNABLE、WAITING 、TIMED_WAITING、TERMINATEDNEW : 新建状态,至今尚未启动的线程的状态。BLOCKED: 阻塞状态,受阻塞并且正在等待监视器锁的某一线程的线程状态。RUNNABLE: 可运行线程的线程状态。这里其实合并了两种状态...原创 2019-11-15 17:29:27 · 113 阅读 · 0 评论 -
并发编程(三) 创建线程的四种方式
简单介绍四种方式继承于Thread类,重写run()方法实现Runable接口,实现里面的run()方法使用 FutureTask 实现有返回结果的线程使用ExecutorService、Executors 线程池。四种方式的详细介绍1、 继承于Thread类,重写run()方法第一种方法- -继承Thread类的方法,一般情况下是不建议用的,因为java是单继承结构,一旦继承了...原创 2019-11-15 16:46:56 · 136 阅读 · 0 评论