下文笔者讲述多线程的实现中,Thread方式和Runnable方式的优缺点简介说明,如下所示
多线程简介说明
我们都知道多线程的实现方式有: 继承Thread类创建线程的方式 和 实现Runnable接口的方式创建线程 那么他们之间有什么优点和缺点呢?下文笔者将一一道来,如下所示
继承Thread类多线程优缺点
优点: 编写简单 如果需要访问当前线程,无需使用Thread.currentThread()方法, 直接使用this,即可获得当前线程 缺点: 因为线程类已经继承了Thread类 所以不能再继承其他的父类
实现Runnable接口多线程方式的优点及缺点
优点: 线程类只是实现Runable接口 还可以继承其他的类。 在这种方式下,可以多个线程共享同一个目标对象, 所以非常适合多个相同线程来处理同一份资源的情况, 从而可以将CPU代码和数据分开,形成清晰的模型,较好地体现了面向对象的思想 缺点: 编程稍微复杂 如果需要访问当前线程,必须使用Thread.currentThread()方法
注意事项: Runable没有返回值 run()方法返回类型为void Callable方法有返回值 call()方法返回类型为泛型和Future、FutureTask配合使用可以获取方法返回值 Callable的call()方法允许向上抛出异常 Runable的run()方法不允许向上抛出异常,异常需在方法内部处理
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。