多线程!
来源:互联网 发布:人类永生不死知乎 编辑:程序博客网 时间:2024/06/08 09:16
1.线程
2.同步与异步的区别。
3.java实现多线程
class 类名 extends Thread{
public void run(){
//相关代码
}
}
(2.)实现Runnable接口,实现接口的run()方法
自定义类并实现Runnable接口,实现run()方法。创建Thread对象,用实现Runnable接口的对象作为参数实例化该Thread对象。调用Thread的start()方法。
2、实现Runnable接口:
class MyThread implements Runnable{
public void run(){
System.out.println("1");
}
}
public class Test {
public static void main(String[] args) {
MyThread thread = new MyThread();
Thread t = new Thread(thread);
t.start();
}
}
(3.)实现Callable接口,重写call()接口。
Callable接口是属于Executor框架中的功能类,Callable接口与Runnable接口的功能类似,但提供了比Runnable更强大的功能。1.Callable可以在任务结束后提供一个返回值,Runnable无法提供这个功能。2.Callable中call()方法可以抛出异常,erRunnable的run()方法不能抛出异常。3.运行Callable可以拿到一个Future对象,Future对象表示异步的计算结果,它提供了检查计算是否完成的方法。
public class Callable{
public static class CallableT implements java.util.concurrent.Callable<String>{
public String call() throws Exception{
return "12";
}
}
public static void main(String[] args) {
ExecutorService thread = Executors.newSingleThreadExecutor();
Future<String> future = thread.submit(new CallableT());
try {
System.out.println("123");
System.out.println(future.get());
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
}
}
4.run()方法和start()方法的区别
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 多线程
- 阿里物联网套件-服务端SDK学习实践(基础篇-7批量申请设备)
- 编写java程序151条建议读书笔记(17)
- 深入理解javascript原型和闭包(14)——从【自由变量】到【作用域链】
- Square 开源 Android
- 汇编环境配置以及代码编写调试
- 多线程!
- React Native项目实战之搭建美团个人中心界面
- STL MAP详解
- 微软面试100题-栈的push-pop序列问题
- 机器学习资料汇总
- (牛客网)变态跳台阶
- 高软 go语言 lab5
- html 之间如何通过URL传输参数,并解决中文乱码问题
- Python之IO-文件的操作