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 中的多线程简单介绍的更多相关文章

  1. java中数据流的简单介绍

    java中的I/O操作主要是基于数据流进行操作的,数据流表示了字符或者字节的流动序列. java.io是数据流操作的主要软件包 java.nio是对块传输进行的支持 数据流基本概念 “流是磁盘或其它外 ...

  2. Java中NIO的简单介绍

    NIO基本介绍 Java NIO(New IO) 也有人称之为Java non-blocking IO 是从Java1.4版本开始引入的一个新的IO API,可以代替标准的IO API.NIO与原来的 ...

  3. 多线程(三) java中线程的简单使用

    java中,启动线程通常是通过Thread或其子类通过调用start()方法启动. 常见使用线程有两种:实现Runnable接口和继承Thread.而继承Thread亦或使用TimerTask其底层依 ...

  4. Java中的多线程技术全面详解

    本文主要从整体上介绍Java中的多线程技术,对于一些重要的基础概念会进行相对详细的介绍,若有叙述不清晰或是不正确的地方,希望大家指出,谢谢大家:) 为什么使用多线程 并发与并行 我们知道,在单核机器上 ...

  5. iOS开发多线程篇—多线程简单介绍

    iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...

  6. 【转】Java中的多线程学习大总结

    多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的. 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程 ...

  7. Java中的 多线程编程

    Java 中的多线程编程 一.多线程的优缺点 多线程的优点: 1)资源利用率更好2)程序设计在某些情况下更简单3)程序响应更快 多线程的代价: 1)设计更复杂虽然有一些多线程应用程序比单线程的应用程序 ...

  8. Java中的多线程=你只要看这一篇就够了

    如果对什么是线程.什么是进程仍存有疑惑,请先Google之,因为这两个概念不在本文的范围之内. 用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现.说这个话其 ...

  9. 详细分析 Java 中实现多线程的方法有几种?(从本质上出发)

    详细分析 Java 中实现多线程的方法有几种?(从本质上出发) 正确的说法(从本质上出发) 实现多线程的官方正确方法: 2 种. Oracle 官网的文档说明 方法小结 方法一: 实现 Runnabl ...

随机推荐

  1. 【LeetCode】659. Split Array into Consecutive Subsequences 解题报告(Python)

    [LeetCode]659. Split Array into Consecutive Subsequences 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id ...

  2. A. Watchmen(Codeforces 650A)

    A. Watchmen time limit per test 3 seconds memory limit per test 256 megabytes input standard input o ...

  3. Vue(27)vue-codemirror实现在线代码编译器

    前言 如果我们想在Web端实现在线代码编译的效果,那么需要使用组件vue-codemirror,他是将CodeMirror进行了再次封装 支持代码高亮 62种主题颜色,例如monokai等等 支持js ...

  4. 代码质量管理sonarqube部署使用

    一.sonarqube的部署 1.下载sonaqube:https://www.sonarqube.org/downloads/ 根据需要下载特定版本: 2.如果通过sonar-scanner进行代码 ...

  5. 基于Spring MVC + Spring + MyBatis的【学生信息管理系统】

    资源下载:https://download.csdn.net/download/weixin_44893902/45603211 练习点设计: 模糊查询.删除.新增 一.语言和环境 实现语言:JAVA ...

  6. Android物联网应用程序开发(智慧园区)—— 园区监控系统界面

    效果图: 布局代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:a ...

  7. .Net Core 3.1 WebApi发布到IIS

    安装.Net Core 3.1 运行时环境 1.官网地址https://dotnet.microsoft.com/download/dotnet,选择要下载的运行时版本(.Net Core 3.1), ...

  8. xpath如何使用正则、xpath定位svg标签、xpath常用集合

    自己用到的xpath都收集下咯!!! 持续更新本页面 xpath查找svg图标 xpath('//*[local-name() = "svg" and @class="_ ...

  9. 初识python:scoket 单用户互发消息

    实现功能: 启动"服务器".通过"客户端1"连接"服务器",然后互发消息.在此过程中,有"客户端2"连接到"服 ...

  10. CentOS7 常用命令汇总

    原文链接:https://blog.csdn.net/weixin_42208959/article/details/107970958 目录常用命令1.进程相关命令1.1 查询进程和结束进程1.2 ...