• 多线程常用方法


    package com.yanan.java;
    
    /**
     * Created by zhangyanana    on 2017/2/25.
     */
    
    /*
        Thread的常用方法
        1.start():启动线程并执行相应的run()方法;
        2.run();子线程要执行的代码放入run()方法中;
        3.currentThread();静态的,调取当前的线程,返回值是线程;
        4.getName():获取线程的名字
        5.setName():设置线程的名字
        6.yield():调用此方法的线程释放当前CPU的执行权
        7.join():在A线程中调用B线程的join()方法,表示,当执行到此方法,A线程停止执行,
                    直至B线程执行完毕,A线程再接着join()之后的代码执行
        8.isAlive():判断当前线程是否存活
        9.sleep(long l):显示的让当前的线程随眠 l 毫秒
    
        10.线程通信:wait(),notify(),notifyAll()
        11.getPriority():获取线程的优先级,默认为5,最大10,最小1(优先级越大,抢到CPU执行权的概率变大,并不是说一定能抢到)
        12.setPriority():设置线程的优先级
     */
    public class TestThread1 {
        public static void main(String[] args) {
            SubThread1 st1 = new SubThread1();
            /*SubThread1 st2 = new SubThread1();*/
            st1.setName("子线程");
            Thread.currentThread().setName("--------主线程");
    
            st1.start();
            /*st2.start();*/
            for(int i =0;i<100;i++){
                System.out.println(Thread.currentThread().getName() + ":" + i);
                /*if(i % 10==0){
                    Thread.currentThread().yield();
                }*/
                /*if( i == 20){
                    try {
                        st1.join();
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }*/
    
            }
    
        }
    }
    class SubThread1 extends Thread{
        public void run(){
            for(int i =0;i<100;i++){
                System.out.println(Thread.currentThread().getName() + ":" + i);
            }
        }
    }
  • 相关阅读:
    DBSCAN密度聚类
    特征工程之特征预处理
    特征工程之特征表达
    特征工程之特征选择
    Adaboost,GBDT和XGboost算法
    036 Go操作NSQ
    035 Go操作Redis
    034 Go操作MySQL
    033 protobuf初识
    032 二进制协议gob及msgpack介绍
  • 原文地址:https://www.cnblogs.com/zhyn-BeHard/p/6488792.html
Copyright © 2020-2023  润新知