博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java多线程基础复习
阅读量:6817 次
发布时间:2019-06-26

本文共 628 字,大约阅读时间需要 2 分钟。

  hot3.png

线程和进程的概念:

进程包括线程,线程是进程的一部分。

一个进程可以有多个线程。

-----------

多线程的实现方式几种:

1,继承thread类重写run方法。

2,实现runnable接口重写run方法。

这种方式通用一点,避免单继承

3, 实现Callable接口通过FutureTask包装器来创建Thread线程。

------------

线程同步和异步:synchronize同步,多线程访问同一份资源,确保资源安全

同步块:synchronize(引用类型、this、类.class){ }

同步方法:synchronize

过多的同步造成死锁。

------------

线程的状态:

新生--就绪--运行-阻塞--终止

阻塞当前线程,sleep休眠,不会释放锁。

----------

线程池:

当程序中需要创造大量生存期很短的线程时候,优先使用线程池创建线程。

一个线程完成一项任务所需时间为:创建线程时间(T1),在线程中执行任务的时间(T2),销毁线程时间(T3)。

线程池技术正是关注如何缩短或调整T1、T3时间的技术,从而提高程序的性能

---------

生产者消费者模式:

考虑生产者和消费者的交替操作。

--------

任务调度:

timer定时器

timertask任务类

 

互相学习,共同进步:)转载请注明出处谢谢。

 

 

转载于:https://my.oschina.net/hp2017/blog/1553038

你可能感兴趣的文章
SQL Server返回插入数据的ID和受影响的行数
查看>>
APP测试常见点
查看>>
JavaScript+HTML5 实现打地鼠小游戏
查看>>
转一下递归
查看>>
浅谈利用同步机制解决Java中的线程安全问题
查看>>
第三章 列表简介
查看>>
四则运算设计思路
查看>>
每间隔15分钟生成一个时间戳
查看>>
【学习】python(os)模块总结
查看>>
JAVA毕业后工资有多少?
查看>>
android,HttpPost 提交数据
查看>>
自定义简单IOC类
查看>>
js中如何高效、简洁、清晰地定义变量
查看>>
不知从何下手之桌面设置成D(E、F)盘后D(E、F)盘所有文件跑桌面去了 how to solve?...
查看>>
OEA体验:常用功能3 多对多关系
查看>>
【尺取】POJ 3320
查看>>
最新 macOS Sierra 10.12.3 安装CocoaPods及使用详解<转>
查看>>
2016-9-18
查看>>
python学习笔记(一):基本概念
查看>>
数学 - 线性代数导论 - #11 基于矩阵A生成的空间:列空间、行空间、零空间、左零空间...
查看>>