没有合适的资源?快使用搜索试试~ 我知道了~
1.并发编程之线程池基础 1.1 线程与进程区别 进程:是执行中一段程序,即一旦程序被载入到内存中并准备执行,它就是一个进程。进程是表示资源分配的的基本概念,又是调度运行的基本单位,是系统中的并发执行的单位。 线程:单个进程中执行中每个任务就是一个线程。线程是进程中执行运算的最小单位。 一个线程只能属于一个进程,但是一个进程可以拥有多个线程。多线程处理就是允许一个进程中在同一时刻执行多个任务。 1.2 多线程创建方式 1.2.1.继承Thread类 下面展示一些 内联代码片。 /** * 使用继承Thread 方式创建线程池 * @作者 陈晨辉 * @创建日期 2020/3/18 15:
资源推荐
资源详情
资源评论
多线程学习篇之线程池基础多线程学习篇之线程池基础
1.并发编程之线程池基础并发编程之线程池基础
1.1 线程与进程区别线程与进程区别
进程:是执行中一段程序,即一旦程序被载入到内存中并准备执行,它就是一个进程。进程是表示资源分配的的基本概念,又是调度运行的基本单位,是系统中的并发执行的单位。
线程:单个进程中执行中每个任务就是一个线程。线程是进程中执行运算的最小单位。
一个线程只能属于一个进程,但是一个进程可以拥有多个线程。多线程处理就是允许一个进程中在同一时刻执行多个任务。
1.2 多线程创建方式多线程创建方式
1.2.1.继承继承Thread类类
下面展示一些 内联代码片。
/**
* 使用继承Thread 方式创建线程池
* @作者 陈晨辉
* @创建日期 2020/3/18 15:31
**/
public class Demo1 {
public static void main(String[] args) {
// 创建线程对象
MyThread myThread = new MyThread();
// 启动线程
myThread.start();
}
// 继承Thread类 实现run方法
static class MyThread extends Thread{
@Override
public void run() {
for (int i = 0; i < 1000; i++) {
System.out.println("输出打印"+i);
}
}
}
}
1.2.2.实现实现Runnable接口接口
下面展示一些 内联代码片。
/**
* 使用实现Runnable接口方式
* 创建线程
* @作者 陈晨辉
* @创建日期 2020/3/18 15:31
**/
public class Dmeo2{
public static void main(String[] args) {
// 创建线程对象 传入要执行的任务
Thread thread = new Thread(()->{
// do something
});
// 调用线程.start方法
thread.start();
}
// 实现Runnable接口 实现run方法
static class MyRunnable implements Runnable {
@Override
public void run() {
for (int i = 0; i < 1000; i++) {
System.out.println("输出:"+i);
}
}
}
}
使用匿名内部类使用匿名内部类
下面展示一些 内联代码片。
public static void main(String[] args) {
//使用匿名内部类方式创建Runnable实例
Thread t1 = new Thread(new Runnable(){
@Override
public void run() {
for (int i = 0; i {
for (int i = 0; i < 1000; i++) {
System.out.println("输出"+i);
}
});
t2.start();
}
1.2.3.实现实现Callable接口接口
下面展示一些 内联代码片。
/**
* 实现Callable的接口
* 实现一个带返回值的任务
* @作者 陈晨辉
* @创建日期 2020/3/18 15:31
**/
public class Demo3{
public static void main(String[] args) {
//FutureTask包装我们的任务,FutureTask可以用于获取执行结果
FutureTask ft = new FutureTask(new MyCallable());
//创建线程执行线程任务
Thread thread = new Thread(ft);
thread.start();
try {
//得到线程的执行结果
Integer num = ft.get();
System.out.println("得到线程处理结果:" + num);
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
资源评论
weixin_38654915
- 粉丝: 7
- 资源: 995
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 自动办公-51 Excel-案例-把文件夹整理到Excel中.zip
- 自动办公-52 Excel-案例-用Excel画画.zip
- 在Word表格中将上下行相同内容的单元格自动合并.zip
- C语言《基于 STM32G0 的带 USB C 供电的锂电池充电器》+项目源码+文档说明
- (源码)基于JavaFX和Portainer的Docker管理系统.zip
- 钢材表面缺陷数据集.zip,2624张图片,Python
- (源码)基于Python的物联网和个人安全警报系统.zip
- 精选微信小程序源码:滴滴拼车小程序(含源码+源码导入视频教程&文档教程,亲测可用)
- (源码)基于Android的智能学习管理系统.zip
- 精选微信小程序源码:汤总便利小程序(门店店铺类)小程序(含源码+源码导入视频教程&文档教程,亲测可用)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功