zoukankan      html  css  js  c++  java
  • 多线程两种最常用的例子

    1.Thread 方法的子类

    package cc;
    
    class myThread extends Thread {
        private String title ;
        public myThread(String title){
            this.title = title ;
        }
        public void run(){
            for(int x = 0 ; x < 202; x++){
                String sub = this.title.substring(0,3) ;
                System.out.println(sub);
            }
        }
    }
    public class Demo {
    
    
        public static void main(String[] args) {
            myThread m1 = new myThread("m1m1m1m1") ;
            myThread m2 = new myThread("m2m2m2m2") ;
            m1.start() ;
            m2.start() ;
    
        }
    
    }

    为什么要用start() ?

    在Thread类的start的方法里面有一个异常抛出

    Throws:
    IllegalThreadStateException - if the thread was already started.

    在start()方法里面要调用一个start0() 方法,这个方法使用了(JNI )技术,他调用了本机操作系统的函数。

    2使用Runnable 接口实现多线程

    如果自己的类已经extends另一个类,就无法直接extends Thread,此时,必须实现一个Runnable接口,如下:

    package cc;
    class A{
        
    }
    class myThread extends A implements Runnable{
        private String title ;
        public myThread(String title){
            this.title = title ;
        }
        public void run(){
            for(int x = 0 ; x < 202; x++){
                String sub = this.title.substring(0,3) ;
                System.out.println(sub);
            }
        }
    }
    public class Demo {
    
    
        public static void main(String[] args) {
            myThread m1 = new myThread("m1m1m1m1") ;
            Thread thread = new Thread (m1) ;
            myThread m2 = new myThread("m2m2m2m2") ;
            Thread thread2 = new Thread(m2) ;
            thread.start();
            thread2.start();
    
        }
    
    }

    先实现一个接口,然后实例化一个Thread类,然后将时间的接口传入这个实例化的Thread类中。

  • 相关阅读:
    logstash multiple piplines 配置方式
    filter-mutate过滤插件
    redis主从复制
    redis sentinel(哨兵)
    mongodb replica-set
    Linux入门篇(五)——Shell(一)
    Linux入门篇(四)——Vim的使用与Bash
    Linux入门篇(三)——文件与目录
    Linux入门篇(二)——文件
    Linux入门篇(一)——基本命令
  • 原文地址:https://www.cnblogs.com/da-peng/p/5154717.html
Copyright © 2011-2022 走看看