zoukankan      html  css  js  c++  java
  • 多线程(1)--基础实现

    //多线程操作类 继承Thread类
    public class TestThread extends Thread {
        private String name;//共享变量
        public TestThread(String name){
                this.name=name;
        }
        public void run(){
                for(int i = 0 ;i<100;i++){
                         System.out.println(this.name);
                }
        }
    }

    //主线程
    public class MainThread {

          /**
           * @param args
          */
          public static void main(String[] args) {
                 new TestThread("shixin").start();
                 new TestThread("axue").start();

          }

    }

    //多线程操作类 继承Runnable接口
    public class TestThread implements Runnable{
          private String name;//共享变量
          public TestThread(String name){
                this.name=name;
          }
          public void run(){
                for(int i = 0 ;i<100;i++){
                System.out.println(this.name);
                }
          }
    }
    //主线程

    public class MainThread {

        /**
        * @param args
        */
        public static void main(String[] args) {
            new Thread(new TestThread("shixin")).start();
            new Thread(new TestThread("axue")).start();

        }

    为什么要用start()方法启动多线程呢?

    在JDK的安装目录下,src.zip是全部的java源程序,通过此代码找到Thread类的Thread方法的定义:

    public synchronized void start(){
          if(started)//判断多线程是否已启动
                 throw new IllegalThreadStateException;
         started = true;
         start0();//调用start0()方法
     }
        private native void start0();//使用native关键字声明的方法,没有方法体

    操作系统有很多种,Windows、Linux、Unix,既然多线程操作中要进行CPU资源的强占,也就是说要等待CPU调度,那么这些调度的操作时由各个操作系统的底层实现的,所以在Java程序中根本就没法实现,那么此时Java设计者定义了native关键字,使用此关键字表示可以调用操作系统的底层函数,那么这样的技术又称为JNI技术(Java Native Interface)。

  • 相关阅读:
    关于数据库的压测(window+liunx)
    参数化关联----三种方式
    jmeter的使用
    day07----------移动端测试
    day07----------Charles抓取web端的HTTPS协议下载和七个功能操作
    CURL 运用
    有关数据库的导出导入备份
    同时删除多张表的数据
    一条sql语句update 多条记录
    linux 将一个服务器上的文件或文件夹拷贝到另一个服务器上(转载)
  • 原文地址:https://www.cnblogs.com/james1207/p/3279872.html
Copyright © 2011-2022 走看看