java-->>线程
文章平均质量分 78
iteye_17959
这个作者很懒,什么都没留下…
展开
-
java之yield(),sleep(),wait()区别详解-备忘笔记
1、sleep() 使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该方法要捕捉异常。 例如有两个线程同时执行(没有synchronized)一个线程优先级为MAX_PRIORITY,另一个为MIN_PRIORITY,如果没有Sleep()方法,只有高优先级的线程...原创 2011-12-23 10:59:42 · 3336 阅读 · 1 评论 -
Java线程之线程状态的转换
一、线程状态 线程的状态转换是线程控制的基础。线程状态总的可以分为五大状态:分别是生、可运行、运行、等待|阻塞|睡眠、死。 简单描述如下:1、新状态:线程对象已经创建,还没有在其上调用start()方法。2、可运行状态:当线程有资格运行,但调度程序还没有把它选定为运行线程时线程所处的状态。当start()方法调用时,线程首先进入可运行状态,在线程运行之后或者阻塞、等待或...原创 2011-12-27 17:28:59 · 122 阅读 · 0 评论 -
Java线程之线程的同步与锁
一、同步问题提出线程的同步是为了防止多个线程访问一个数据对象时,对数据造成的破坏。二、同步和锁定Java中每个对象都有一个内置锁。当线程运行到非静态的synchronized同步方法上时,自动获得与正在执行代码的当前实例(this实例)有关的锁。获得一个对象的锁也称为获取锁,锁定对象、在对象上锁或在对象上同步。当程序运行到synchronized同步方法货代码块时才该对象...原创 2011-12-28 22:15:17 · 154 阅读 · 0 评论 -
java线程之synchronized关键字
synchronized 关键字,代表这个方法加锁,相当于不管哪一个线程A每次运行到这个法时,都要检查有没有其它正在用这个方法的线程B(或者C D等),有的话要等正在使用这个方法的线程B(或者C D)运行完这个方法后再运行此线程A,没有的话,直接运行 它包括两种用法:synchronized 方法和 synchronized 块。 1. synchronized 方法:通过...原创 2011-12-29 00:11:24 · 137 阅读 · 0 评论