java 中的多线程简单介绍
package com.zxf.demo;
/*
* 多线程的实现方式两种?
* 一、.实现 runnable 接口
* 2.重写run方法 Run():当一个线程启动后,就会自动执行该方法
* 3.在主方法中new一个 java 对象 Demo01 demo01=new Demo01();
* 4.将其放在 thread中 Thread t1=new Thread(demo01);
* 5.调用start方法 t1.start();
*
* 使用麻烦
* 避免了单继承的局限性
*
*二、继承Thread父类:
* 缺点:单继承的局限性
* 优点:使用方便
*
*
三、五种状态?
* 创建 就绪 运行 阻塞 死亡!
*
*
四、 常用方法?
* 1.setpriority(int newPriority) 更改优先级。增大可能性。【1-10】5
* 2.sleep (); 休息一会 让线程
* 3.void join(); 强制的让某一个线程 先执行完 类似于插队的效果!
* 4.thread.yield(); 礼让的方法,让当前线程礼让别的线程,有可能成功。和join的方法很像。
* 5.void interrupt() 中断线程
* 6.boolean isAlive() 测试线程是否处于活动状态
* 7.Thread.currentThread().getName() 获得该线程的名字
*
五、线程同步的问题?
解决方法 1.同步方法
2.同步代码块 六、启动一个线程是run()还是start()?它们的区别?
Start方法是将线程启动起来,遵循生命周期的运行流程的,
按照该方法启动的线程才可以轮番被cpu调度,随机执行,
但是run方法就是一个普通方法,若调用该方法,就没有将该线程进去启动,也就没有线程运行的先决条件了,
所以该线程就不会再轮番的被cpu进行调度了
*/
public class Demo01 implements Runnable{ @Override
public void run() {
for (int i = 0; i <30; i++) {
System.out.println("当前运行的线程:"+Thread.currentThread().getName()+"----"+i);
} }
public static void main(String[] args) {
Demo01 demo01=new Demo01();
Demo01 demo02=new Demo01(); //创建了你定义的线程类的线程对象。
Thread t1=new Thread(demo01); //默认名字 Thread-0
Thread t2=new Thread(demo02, "哈哈"); //给线程 起名字 t1.start();
t2.start();
} }
java 中的多线程简单介绍的更多相关文章
- java中数据流的简单介绍
java中的I/O操作主要是基于数据流进行操作的,数据流表示了字符或者字节的流动序列. java.io是数据流操作的主要软件包 java.nio是对块传输进行的支持 数据流基本概念 “流是磁盘或其它外 ...
- Java中NIO的简单介绍
NIO基本介绍 Java NIO(New IO) 也有人称之为Java non-blocking IO 是从Java1.4版本开始引入的一个新的IO API,可以代替标准的IO API.NIO与原来的 ...
- 多线程(三) java中线程的简单使用
java中,启动线程通常是通过Thread或其子类通过调用start()方法启动. 常见使用线程有两种:实现Runnable接口和继承Thread.而继承Thread亦或使用TimerTask其底层依 ...
- Java中的多线程技术全面详解
本文主要从整体上介绍Java中的多线程技术,对于一些重要的基础概念会进行相对详细的介绍,若有叙述不清晰或是不正确的地方,希望大家指出,谢谢大家:) 为什么使用多线程 并发与并行 我们知道,在单核机器上 ...
- iOS开发多线程篇—多线程简单介绍
iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...
- 【转】Java中的多线程学习大总结
多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的. 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程 ...
- Java中的 多线程编程
Java 中的多线程编程 一.多线程的优缺点 多线程的优点: 1)资源利用率更好2)程序设计在某些情况下更简单3)程序响应更快 多线程的代价: 1)设计更复杂虽然有一些多线程应用程序比单线程的应用程序 ...
- Java中的多线程=你只要看这一篇就够了
如果对什么是线程.什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内. 用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现.说这个话其 ...
- 详细分析 Java 中实现多线程的方法有几种?(从本质上出发)
详细分析 Java 中实现多线程的方法有几种?(从本质上出发) 正确的说法(从本质上出发) 实现多线程的官方正确方法: 2 种. Oracle 官网的文档说明 方法小结 方法一: 实现 Runnabl ...
随机推荐
- 1742 开心的小Q
如果一个数字存在一个约数是完全平方数,那么小Q就认为这个数是有趣的. 小Q喜欢收集有趣的数字,每找到一个有趣的数,小Q就会变得很开心. 小Q发现12是有趣的,18也是有趣的,它们都是36的约数,而在3 ...
- The Best Path
The Best Path Time Limit: 9000/3000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Tot ...
- 山寨F407板子如何烧录正点原子例程、Keil下载提示Invalid ROM Table
山寨F407板子如何烧录正点原子例程 手头这块块信赢达的STM32F407板子,是模仿正点原子探索者STM32F407板子的,外设和接口,几乎是一模一样. 探索者板子用的是STM32F407ZET6, ...
- Netty源码分析之ByteBuf引用计数
引用计数是一种常用的内存管理机制,是指将资源的被引用次数保存起来,当被引用次数变为零时就将其释放的过程.Netty在4.x版本开始使用引用计数机制进行部分对象的管理,其实现思路并不是特别复杂,它主要涉 ...
- 编写Java程序_输入本部门五位员工的薪资,并根据用户输入的序号为指定员工进行提薪。若用户输入序号出现越界,则提示错误。
要求说明: 输入本部门五位员工的薪资,并根据用户输入的序号为指定员工进行提薪.若用户输入序号出现越界,则提示错误. 运行效果如图: 实现代码: import java.util.Scanner; pu ...
- .net core中Grpc使用报错:The remote certificate is invalid according to the validation procedure.
因为Grpc采用HTTP/2作为通信协议,默认采用LTS/SSL加密方式传输,比如使用.net core启动一个服务端(被调用方)时: public static IHostBuilder Creat ...
- 安装uiautomator2 + python 自动化环境
搭建环境: 1.Python版本 37 2.已经搭建到adb (之前试过在python版本几,一直都装不上UIautomator2,报这个错) 安装步骤: 1.到python的安装路径 > 一直 ...
- linux 之 导出远程oracle数据库表结构及数据
导出用户下所有表结构及数据 exp 用户名/密码@ip/数据库 file=文件路径/文件名.dmp owner='用户' 导出用户下所有表结构,不导出数据 exp 用户名/密码@ip/数据库 file ...
- react中使用react-transition-group(CSSTransition)
https://blog.csdn.net/sophie_u/article/details/80093876
- SpringBoot学习笔记四之后台登录页面的实现
注:图片如果损坏,点击文章链接: https://www.toutiao.com/i6803542216150090252/ 继续之前完成的内容,首先创建一个常量类 常量类的内容 服务器端渲染 前后端 ...