Java实现在不同线程中运行的代码实例

 更新时间:2017年04月12日 11:57:02   作者:FrankYou  
这篇文章主要介绍了Java实现在不同线程中运行的代码,结合具体实例形式分析了java多线程操作的相关实现技巧,需要的朋友可以参考下

本文实例讲述了Java实现在不同线程中运行的代码。分享给大家供大家参考,具体如下:

start()方法开始为一个线程分配CPU时间,这导致对run()方法的调用。

代码1

package Threads;
/**
 * Created by Frank
 */
public class ThreadsDemo1 extends Thread {
 private String msg;
 private int count;
 public ThreadsDemo1(final String msg, int n) {
  this.msg = msg;
  count = n;
  setName(msg + " runner Thread");
 }
 public void run() {
  while (count-- > 0) {
   System.out.println(msg);
   try {
    Thread.sleep(100);
   } catch (InterruptedException e) {
    return;
   }
  }
  System.out.println(msg + " all done.");
 }
 public static void main(String[] args) {
  new ThreadsDemo1("Hello from X", 10).start();
  new ThreadsDemo1("Hello from Y", 15).start();
 }
}

代码2:

package Threads;
/**
 * Created by Frank
 */
public class ThreadsDemo2 implements Runnable {
 private String msg;
 private Thread t;
 private int count;
 public static void main(String[] args) {
  new ThreadsDemo2("Hello from X", 10);
  new ThreadsDemo2("Hello from Y", 15);
 }
 public ThreadsDemo2(String m, int n) {
  this.msg = m;
  count = n;
  t = new Thread(this);
  t.setName(msg + "runner Thread");
  t.start();
 }
 public void run() {
  while (count-- > 0) {
   System.out.println(msg);
   try {
    Thread.sleep(100);
   } catch (InterruptedException e) {
    return;
   }
  }
  System.out.println(msg + " all done.");
 }
}

代码3:

package Threads;
/**
 * Created by Frank
 */
public class ThreadsDemo3 {
 private int count;
 public static void main(String[] args) {
  new ThreadsDemo3("Hello from X", 10);
  new ThreadsDemo3("Hello from Y", 15);
 }
 public ThreadsDemo3(final String msg, int n) {
  this.count = n;
  Thread t = new Thread(new Runnable() {
   public void run() {
    while (count-- > 0) {
     System.out.println(msg);
     try {
      Thread.sleep(100);
     } catch (InterruptedException e) {
      return;
     }
    }
    System.out.println(msg + " all done.");
   }
  });
  t.setName(msg + " runner Thread");
  t.start();
 }
}

eclipse运行结果如下:

希望本文所述对大家java程序设计有所帮助。

相关文章

  • Spring的嵌套事务(Propagation.NESTED)到底是个啥案例代码讲解

    Spring的嵌套事务(Propagation.NESTED)到底是个啥案例代码讲解

    SavePoint是数据库事务中的一个概念, 可以将整个事务切割为不同的小事务,可以选择将状态回滚到某个小事务发生时的样子,本文通过案例代码讲解Spring的嵌套事务(Propagation.NESTED)到底是个啥,感兴趣的朋友跟随小编一起看看吧
    2023-01-01
  • Java Apache common-pool对象池介绍

    Java Apache common-pool对象池介绍

    这篇文章主要介绍了Java Apache common-pool对象池介绍,文章通过围绕主题展开详细的内容介绍,具有一定的参考价值,感兴趣的小伙伴可以参考一下
    2022-09-09
  • 关于线程池异步线程中再次获取线程池资源的问题

    关于线程池异步线程中再次获取线程池资源的问题

    这篇文章主要介绍了关于线程池异步线程中再次获取线程池资源的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-08-08
  • rabbitmq中routingkey的作用说明

    rabbitmq中routingkey的作用说明

    这篇文章主要介绍了rabbitmq中routingkey的作用说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • 基于Spring-AOP实现自定义分片工具详解

    基于Spring-AOP实现自定义分片工具详解

    随着数据量的增长,在与其他系统交互时,批量接口会出现超时现象,发现原批量接口在实现时,没有做分片处理。由于与其他系统交互比较多,一个一个接口去做分片优化,改动量较大,所以考虑通过AOP解决此问题,感兴趣的可以了解一下
    2022-11-11
  • MyBatis传递多个参数方式

    MyBatis传递多个参数方式

    这篇文章主要介绍了MyBatis传递多个参数方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • java通过poi解析word入门的操作方法

    java通过poi解析word入门的操作方法

    Apache POI 是一个处理Miscrosoft Office各种文件格式的开源项目,可以使用POI在Java程序中对Miscrosoft Office各种文件进行读写操作,本文给大家介绍java通过poi解析word入门的操作方法,感兴趣的朋友一起看看吧
    2024-08-08
  • Java调用商品详情API的项目实践

    Java调用商品详情API的项目实践

    在现代电子商务网站中,商品详情API是一个重要的组件,本文就来介绍一下Java调用商品详情API的项目实践,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • Java基础题新手练习(三)

    Java基础题新手练习(三)

    下面小编就为大家带来一篇Java基础的几道练习题(分享)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望可以帮到你
    2021-07-07
  • spring mvc中的@ModelAttribute注解示例介绍

    spring mvc中的@ModelAttribute注解示例介绍

    在Spring mvc中,注解@ModelAttribute是一个非常常用的注解,下面这篇文章主要给大家介绍了关于spring mvc中@ModelAttribute注解的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下。
    2017-09-09

最新评论