旗下导航:搜·么
当前位置:网站首页 > JAVA教程 > 正文

java怎样完成多线程【JAVA教程】,java

作者:搜教程发布时间:2019-12-04分类:JAVA教程浏览:32评论:0


导读:Java多线程是Java高等特征之一,经由过程多线程,我们能够完成多任务同时协同事情,在肯定情况下提拔顺序效力,然则Java多线程仍要郑重运用。(引荐进修:java课程...

Java多线程是Java高等特征之一,经由过程多线程,我们能够完成多任务同时协同事情,在肯定情况下提拔顺序效力,然则Java多线程仍要郑重运用。 (引荐进修:java课程)

起首第一点,Java多线程须要较高的编码技能,一旦运用不当就会形成顺序毛病,线程间歹意合作死锁,致使顺序卡死。

其二,滥用多线程可能会形成某些症结参数杂乱,这时候须要做好线程间的同步和锁治理。

其三,线程的切换是须要分外的价值的,也就是常说的“上下文切换”,假如运用不当,不仅不会进步效力,反而会形成效力的急剧下降。

Java多线程的完成体式格局

继续Thread来完成多线程

Java供应了一个超类Thread给我们来extends,一旦继续了它,就能够经由过程override 个中的run要领,来完成多线程,细致代码以下:

package com.dingtao.test;
import java.io.*;
 
public class MyThread extends Thread{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName());
    }
 
    public static void main(String[] args) throws IOException {
        Thread t1 = new MyThread();
        Thread t2 = new MyThread();
        t1.start();
        t2.start();
    }
}

经由过程完成Runnable接口来完成

由于关于一些类来讲,他们不能继续Thread来完成多线程,由于Java划定同时只能继续一个超类,然则却能够同时完成多个接口,因而Runnable就更分外受欢迎。细致代码以下:

package com.dingtao.test;
import java.io.*;
 
public class MyThread implements Runnable{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName());
    }
 
    public static void main(String[] args) throws IOException {
        Thread t1 = new Thread(new MyThread());
        Thread t2 = new Thread(new MyThread());
        t1.start();
        t2.start();
    }
}

经由过程Callable来完成一个Thread

细致代码以下:

package com.dingtao.test;
import java.util.concurrent.Callable;
import java.util.concurrent.FutureTask;
 
public class MyThread implements Callable<Integer>{
    public static void main(String[] args){
        MyThread t1 = new MyThread();
        FutureTask<Integer> future = new FutureTask<Integer>(t1);
        new Thread(future,"呵呵哒").start();
    }
    @Override
    public Integer call() throws Exception {
        System.out.println(Thread.currentThread().getName());
        return null;
    }
}

以上就是java怎样完成多线程的细致内容,更多请关注ki4网别的相干文章!

标签:java


欢迎 发表评论: