Java基础 -- 线程
2006-11-09 13:29
337 查看
JAVA线程 基础一
PS:今天突然想看看关于线程的资料,就快速浏览了一下下面这本书,(高级话题没有看)
看了些基本概念,觉得书里小卡片形式的话写的非常不错,就摘录了一些(截图了)。
这本书很不错,又薄又容易懂(而且书中的例子非常有用)。推荐想看线程的朋友看看。
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image002.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image004.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image006.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image008.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image010.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image012.jpg)
PS:因为对上面一段话不是很理解,所以写了个小程序验证了一下。
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image014.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image016.jpg)
PS:今天突然想看看关于线程的资料,就快速浏览了一下下面这本书,(高级话题没有看)
看了些基本概念,觉得书里小卡片形式的话写的非常不错,就摘录了一些(截图了)。
这本书很不错,又薄又容易懂(而且书中的例子非常有用)。推荐想看线程的朋友看看。
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image002.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image004.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image006.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image008.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image010.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image012.jpg)
PS:因为对上面一段话不是很理解,所以写了个小程序验证了一下。
/* *author: snail *date:06-11-09 */ public class IsThreadActive { public static void main(String[] args) { OnlySleepThread t1 = new OnlySleepThread("sleepPig"); OnlySleepThread t2 = new OnlySleepThread("sleepDog"); printThreadsInfo("only main thread in current thread group.two SleepThread haven't slept yet"); t1.start(); t2.start(); try{ Thread.sleep(3000); }catch(InterruptedException e){ } printThreadsInfo("two SleepThreads are sleeping now ,but they are alive!"); try{ Thread.sleep(3000); }catch(InterruptedException e){ } printThreadsInfo("two SleepThreads are wakeup and finished!"); } private static void printThreadsInfo(String message){ System.out.println("/n"+ message); Thread[] threads = new Thread[Thread.activeCount()]; int count = Thread.enumerate(threads); for (int i=0; i<count; i++) { try { //threads[i].join(); System.out.println(threads[i]+"isAlive?"+threads[i].isAlive()); } catch (Exception ex) { } } } private static class OnlySleepThread extends Thread { private boolean sleeping = true; public OnlySleepThread(String name){ super(name); } public void run(){ while(sleeping) { try{ sleep(5000); sleeping = false; }catch(InterruptedException e){ } } } }; } |
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image014.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image016.jpg)
![](http://p.blog.csdn.net/images/p_blog_csdn_net/snailjava/thread21321image018.jpg)
相关文章推荐
- 【Java基础_(线程篇_第一篇)】继承Thread;实现runnable;sleep、wait用法和区别;Thread和Runnable区别;线程停止
- 【java并发】基础(2)--线程中断和终止
- Java基础——多个线程共享数据
- Java线程基础(四):ThreadGroup、Volatility
- Java并发基础(一)-线程基础
- 黑马程序员:Java基础总结----线程池及java5的线程并发库
- Java多线程基础:进程和线程之由来
- 黑马程序员--java基础复习之多线程及线程间通信
- java线程基础巩固---构造Thread对象你也许不知道的几件事
- java 基础-线程(一)
- java基础--23.线程的控制与生命周期
- java语言基础(89)——多线程(线程控制)
- 简述JVM基础(七): Java 内存模型与线程
- 智渔课堂官方免费教程四十一 :Java基础教程之线程死锁
- Java中的线程基础
- Java基础(高级)——多线程的理解和Synchronized实例,以及线程间通信,wait,notify等方法
- Java基础针对自己薄弱环节总结08(线程上)
- Java学习:线程基础(二)
- java基础12:线程间通信----等待唤醒机制
- java基础之线程