java多线程

*多线程

1.多线程

程序: 是为了完成特定任务,用某种语言编写的一组指令的集合,即指一段静态的代码。

进程:每个独立执行的程序称为进程,在操作系统中**进程**是进行系统资源分配、

调度和管理的最小单位,进程在执行过程中拥有独立的内存单元。

线程: 同一时刻,多个任务并发执行,构成多线程。线程是CPU调度和分派的基本单位。

注意:多线程本质上不是多个线程并行执行,只是CPU分配给每个线程的实现片段极小,

肉眼根本分辨不出,好似同一时刻CPU同时处理多个任务。

2.多线程实现

-继承Thread类

-实现Runnable接口:多个线程共享同一资源时

-实现Callable接口

-通过线程池实现

3.多线程生命周期

long getId()

返回此线程的标识符。

String getName()

返回此线程的名称。

static Thread currentThread()

返回对当前正在执行的线程对象的引用。

void setPriority(int newPriority)

更改此线程的优先级。

void join()

等待这个线程死亡。

static void sleep(long millis)

使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行),具体取决于系统定时器和调度程序的精度和准确性。

static void yield() 对调度程序的一个暗示,即当前线程愿意产生当前使用的处理器。

void interrupt()

中断这个线程。

4.线程安全

相关推荐
Elastic 中国社区官方博客11 分钟前
Observability:适用于 PHP 的 OpenTelemetry:EDOT PHP 加入 OpenTelemetry 项目
大数据·开发语言·人工智能·elasticsearch·搜索引擎·全文检索·php
csbysj202017 分钟前
PHP 魔术常量
开发语言
狮子不白31 分钟前
C#WEB 防重复提交控制
开发语言·前端·程序人生·c#
跟着珅聪学java33 分钟前
HttpServletRequest中的 Attribute(属性)生命周期和作用域是 Java Web 开发中的重要概念
java
m0_495562781 小时前
Swift-static和class
java·服务器·swift
合作小小程序员小小店1 小时前
web网页开发,在线物流管理系统,基于Idea,html,css,jQuery,jsp,java,SSM,mysql
java·前端·后端·spring·intellij-idea·web
Elnaij1 小时前
从C++开始的编程生活(12)——vector简单介绍和迭代器
开发语言·c++
饼干,2 小时前
第23天python内容
开发语言·python
这周也會开心2 小时前
SpringMVC整理
java·springmvc