zoukankan      html  css  js  c++  java
  • JAVA线程

    线程的各种状态如上图所看到的。

    对于wait/notify的測试,我将会留到 生产者消费者模式中实现。

    对于join、interrupt的測试例如以下:

    package com.huan;
    
    public class ThreadTest {
    	
    	public static void main(String[] args) throws Exception{
    //		joinTest();
    		interruptTest();
    	}
    	
    	public static void joinTest(){
    		new Thread(){
    			@Override
    			public void run() {
    				Thread t1 = new Thread(){
    					@Override
    					public void run() {
    						try {
    							Thread.sleep(3000);
    							System.out.println("//t1 thread");
    						} catch (InterruptedException e) {
    							System.out.println("//sleep interrupted");
    						}
    
    					}
    
    				};
    				t1.start();
    				try {
    					t1.join();
    				} catch (InterruptedException e) {
    					System.out.println("//join interrupted");
    				}
    				System.out.println("//out thread");
    			}
    		}.start();
    		
    		//t1 thread
    		//out thread
    	};
    	
    	public static void interruptTest(){
    		new Thread(){
    			@Override
    			public void run() {
    				Thread t1 = new Thread(){
    					@Override
    					public void run() {
    						try {
    							Thread.sleep(3000);
    							System.out.println("//t1 thread");
    						} catch (InterruptedException e) {
    							System.out.println("//sleep interrupted");
    						}
    
    					}
    
    				};
    				t1.start();
    				System.out.println("//out thread");
    				t1.interrupt();
    			}
    		}.start();
    		//out thread
    		//sleep exception
    	};
    	
    }
    

  • 相关阅读:
    Cygwin配置总结
    javap 指令集
    超好用的Vim配置
    超过 130 个你需要了解的 vim 命令
    21、面向对象
    20、MySQLdb
    深入java字符串原理及其效率分析
    数据库执行计划
    SQL中EXISTS的用法
    mybatis之foreach用法
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/7105527.html
Copyright © 2011-2022 走看看