java怎样完成多线程【JAVA教程】,java
作者:搜教程发布时间:2019-12-04分类:JAVA教程浏览:22评论: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
相关推荐
- java经典面试题集锦(五)_JAVA教程,java,面试题
- java中的换行符是什么_JAVA教程,java,换行符
- Java中变量必须先定义后使用么_JAVA教程,java,变量
- java中怎么定义接口_JAVA教程,java,接口
- java中静态代码块有什么特点_JAVA教程,java,静态代码块
- java中return语句有什么作用_JAVA教程,java,return
- Java对文件的读写操作(图文详解)_JAVA教程,java
- java经典面试题集锦(四)_JAVA教程,java,面试题
- 八种基本数据类型分别是什么?_JAVA教程,java,基本数据类型
- java如何将字符串转为数组_JAVA教程,java,字符串,数组
你 发表评论:
欢迎- JAVA教程排行
-
- 1接口中只能定义常量和抽象方法,对么_JAVA教程,接口,常量,抽象方法
- 2java文件不能删除文件怎么办_JAVA教程,java
- 3系统提示javac:找不到文件_JAVA教程,系统,提示,javac,找不到,文件
- 4java中sleep的用法是什么?_JAVA教程,java,sleep
- 5java图片显示不出来怎么办_JAVA教程,java
- 6java后台乱码怎么办_JAVA教程,java
- 7javascript和java的区别是什么_JAVA教程,javascript,java
- 8java eclipse无法运行怎么办_JAVA教程,java
- 9Java中split()方法怎么用_JAVA教程,java,spilt,用法
- 最新文章
- 广而告之