文档章节

线程认识随笔

 最胖的瘦子
发布于 2018/09/30 16:55
字数 537
阅读 1
收藏 0
  1. 首先一般会继承java.lang.Thread类,thread类又实现了Runnable接口,runnable接口中是有一个run()的抽象方法的。
  2. 当调用thread类中的start方法时,会进一步调用native()方法执行线程中的run()方法。这里需要主要的是,原生封装的start方法,是有带synchronized锁的。Start()方法是不能被重复调用的
  3. Thread.setPriority(int i) 可以设置线程的优先级,1~10,1级优先级最高
  4. 四中线程池:
    1. newSingleThreadExecutor

创建一个单线程的线程池。这个线程池只有一个线程在工作,也就是相当于单线程串行执行所有任务。如果这个唯一的线程因为异常结束,那么会有一个新的线程来替代它。此线程池保证所有任务的执行顺序按照任务的提交顺序执行。

    1. newFixedThreadPool

创建固定大小的线程池。每次提交一个任务就创建一个线程,直到线程达到线程池的最大大小。线程池的大小一旦达到最大值就会保持不变,如果某个线程因为执行异常而结束,那么线程池会补充一个新线程。

    1. newCachedThreadPool

创建一个可缓存的线程池。如果线程池的大小超过了处理任务所需要的线程,

那么就会回收部分空闲(60秒不执行任务)的线程,当任务数增加时,此线程池又可以智能的添加新线程来处理任务。此线程池不会对线程池大小做限制,线程池大小完全依赖于操作系统(或者说JVM)能够创建的最大线程大小。

    1. newScheduledThreadPool

创建一个大小无限的线程池。此线程池支持定时以及周期性执行任务的需求。

 

© 著作权归作者所有

粉丝 4
博文 34
码字总数 19079
作品 0
杭州
私信 提问
2014年首月的新书推荐!

大家好,这篇贴子是人民邮电出版社信息技术分社的第一期书讯,以后每个月的1号,我们都会从“人邮IT书坊”微信账号给大家推荐最新、最优秀、最热门的技术图书,希望大家多多关注信息技术分社...

生气的散人
2014/01/06
2.4K
3
Monitor的另一种用法

在多线程编程时我们可以使用lock(obj){}代码块来控制关键代码的访问,lock其实是Monitor.Enter(obj)和Monitor.Exit(obj)的一种简单写法(语法糖)。 这个随笔的标题是“Monitor的另一种用法”,...

长平狐
2012/06/08
64
0
java.util.concurrent.atomic随笔及volatile语义

一个原子操作(atomic operation)是个不能分割的整体,没有其它线程(thread)能够中断或检查正在原子操作中的变量。一个原子(atomic)类型就是一个原子操作可用的类型,它可以在基本上没有...

刘小兵2014
2011/07/28
630
0
有必要澄清两个基本概念--算法和过程的关系以及关于程序设计方法论的一些看法

概述 前些天,在一个关于面向对象和面向过程的话题, 我的一句评论"算法说白了就是过程"引起了辩论.于是我有了写这篇随笔的想法: 一位园友善意地说这个评论太业余了.我没有为业余二字生气,因为...

mikelij
2008/11/30
0
0
2月28号随笔

1.对空对象进行强转不会发生异常; 2.Hashtable和ConcurrentHashMap(线程安全)中的key和value均不能为空;hashMap(线程不安全)可以; 3.根据Map中不存在的key去获取value不会发生异常; ...

小伟_乌牛
2018/02/28
31
0

没有更多内容

加载失败,请刷新页面

加载更多

计算机实现原理专题--二进制减法器(二)

在计算机实现原理专题--二进制减法器(一)中说明了基本原理,现准备说明如何来实现。 首先第一步255-b运算相当于对b进行按位取反,因此可将8个非门组成如下图的形式: 由于每次做减法时,我...

FAT_mt
昨天
6
0
好程序员大数据学习路线分享函数+map映射+元祖

好程序员大数据学习路线分享函数+map映射+元祖,大数据各个平台上的语言实现 hadoop 由java实现,2003年至今,三大块:数据处理,数据存储,数据计算 存储: hbase --> 数据成表 处理: hive --> 数...

好程序员官方
昨天
7
0
tabel 中含有复选框的列 数据理解

1、el-ui中实现某一列为复选框 实现多选非常简单: 手动添加一个el-table-column,设type属性为selction即可; 2、@selection-change事件:选项发生勾选状态变化时触发该事件 <el-table @sel...

everthing
昨天
6
0
【技术分享】TestFlight测试的流程文档

上架基本需求资料 1、苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2、开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa上传到appstoreconnect.apple.com进行TestF...

qtb999
昨天
10
0
再见 Spring Boot 1.X,Spring Boot 2.X 走向舞台中心

2019年8月6日,Spring 官方在其博客宣布,Spring Boot 1.x 停止维护,Spring Boot 1.x 生命周期正式结束。 其实早在2018年7月30号,Spring 官方就已经在博客进行过预告,Spring Boot 1.X 将维...

Java技术剑
昨天
18
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部