启动线程的方法总结

继承Thread类

 1 public class A extends Thread{
 2    //重写run方法
 3     public void run(){
 4          add();
 5     }
 6     public void add(){
 7          System.out.println();
 8     }
 9     //开启线程
10     public static void main(String[] args){
11           A a = new A();
12           a.start();
13     }
14 }

继承Thread一个对象只能开启多条线程。

实现Runnable接口

 1 public class B implements Runnable{
 2     public void run(){
 3          add();
 4     }
 5     public void add(){
 6          System.out.println("Hello!")
 7     }
 8     public static void main(String [] args){
 9          B b = new B();
10          Thread t = new Thread(b)
11          t.start();
12     }
13 }

实现Runnable接口一个对象可以开启多条线程

时间: 2024-09-27 11:47:03

启动线程的方法总结的相关文章

启动线程的方法

在线程的Tread对象上调用start()方法,而不是run()或者别的方法. 在调用Start方法之前,线程出于新状态中,新状态是指有一个Thread对象!但还没有一个真正的线程. 在调用start之后发生了一系列复杂的事情 启动新的执行线程(具有新的调用栈) 该线程从新状态转移到可运行状态 当该线程获得机会执行时,其目标run()方法将运行 在java中要想实现多线程,有两种手段,一种是继续Thread类,另外一种是实现Runable接口. 对于直接继承Thread的类来说,代码大致框架是:

Java定时启动线程

这里提供两种在指定时间后启动线程的方法.一是通过java.util.concurrent.DelayQueue实现:二是通过java.util.concurrent.ScheduledThreadPoolExecutor实现.1. java.util.concurrent.DelayQueue类DelayQueue是一个无界阻塞队列,只有在延迟期满时才能从中提取元素.它接受实现Delayed接口的实例作为元素.<<interface>>Delayed.java package ja

线程八大基础核心二(启动线程)

1.引子 在java多线程并发编程中,有八大基础核心.考考你:看看都有哪八大基础核心呢?它们分别是: 1.创建线程的方式 2.线程启动 3.线程停止 4.线程生命周期 5.线程相关的方法 6.线程相关的属性 7.线程异常处理 8.线程安全 今天我们从第二个基础核心开始:启动线程 2.考考你 #前情回顾: 1.在java编程语言中,创建好线程对象后,通过调用start方法,启动线程 Thread t1 = new Thread(); t1.start(); #考考你: 1.问题一:可以调用两次st

Java中Thread方法启动线程

public class ThreadTest extends Thread {  private int count = 10; @Override public void run() { //重写run()方法 while (true) { System.err.print(count + " "); //打印count变量 if (--count == 0) { //count自减,等于0退出循环 return; } } } public static void main(Str

多线程之间的通信(等待唤醒机制、Lock 及其它线程的方法)

一.多线程之间的通信. 就是多个线程在操作同一份数据, 但是操作的方法不同. 如: 对于同一个存储块,其中有两个存储位:name   sex, 现有两个线程,一个向其中存放数据,一个打印其中的数据. 为了解决上述问题中的安全问题(在存放线程进行存放操作的时候, 打印线程不能对共有数据进行操作),所以应当对两个线程       操作共有数据的代码部分进行同步(使用synchronized(),来进行同步, 注意 :使用同一个对象作为同步锁. 二.等待唤醒机制. 在上述案例实现过后运行,会发现:打印

java笔记之线程方式1启动线程

* 需求:我们要实现多线程的程序. * 如何实现呢? *   由于线程是依赖进程而存在的,所以我们应该先创建一个进程出来. *   而进程是由系统创建的,所以我们应该去调用系统功能创建一个进程. *   Java是不能直接调用系统功能的,所以,我们没有办法直接实现多线程程序. *   但是呢?Java可以去调用C/C++写好的程序来实现多线程程序. *   由C/C++去调用系统功能创建进程,然后由Java去调用这样的东西, *   然后提供一些类供我们使用.我们就可以实现多线程程序了. * 那

java 22 - 7 多线程之控制线程的方法

线程休眠(让线程休息一会再运行) public static void sleep(long millis) 在自定义线程类中添加该方法. 更改后,运行测试类,结果就是每执行完一轮,就休息1秒(这里设置的是休眠1秒),再进行一轮. 一轮:(如果测试类调用了3个线程,那么就是随机运行3次为一轮) 如: 哈士奇:1,日期:Wed Oct 05 21:01:19 CST 2016 短尾猫:1,日期:Wed Oct 05 21:01:19 CST 2016 萨摩耶:1,日期:Wed Oct 05 21:

java线程 — 创建和启动线程

创建和启动线程,传统有两种方式: 方式1:继承Thread类: 方式2:实现Runnable接口: 线程类(java.lang.Thread):Thread类和Thread的子类才能称之为线程类.阅读API main方法就是一个主线程 方式1: 步骤: 1. 定义一个类A继承于java.lang.Thread类. 2. 在A类中覆盖Thread类中run方法. 3. 我们在run方法中编写需要执行的操作---->run方法里的,线程执行体 4. 在main方法(线程)中,创建线程对象,并启动线程

【Java 语言】Java 多线程 一 ( 线程启动 | 线程中断 )

一. 线程启动 线程启动 : -- 1. 继承 Thread 运行线程 : 重写 Thread 类的 run 方法, 然后执行该线程; -- 2. 实现 Runnable 接口, 并运行线程; -- 代码示例 : package com.hanshuliang.thread; public class ThreadStart { public static void main(String[] args) { //1. 继承 Thread 运行线程 MyThread thread = new M