JAVA线程之三:线程的挂起和恢复
1,概述:线程的挂起操作实质上就是使线程进入“非可执行”状态下,在这个状态下CPU不会分给线程时间片,进入这个状态可以用来暂停一个线程的运行;在线程挂起后,可以通过重新唤醒线程来使之恢复运行。当一个线程进入“非可执行”状态,即挂起状态时,必然存在某种原因使其不能继续运行,这些原因可能是如下几种情况:
(1)通过调用sleep()方法使线程进入休眠状态,线程在指定时间内不会运行。
(2)通过调用join()方法使线程挂起,如果某个线程在另一个线程t上调用t.join(),这个线程将被挂起,直到线程t执行完毕为止。
(3)通过调用wait()方法使线程挂起,直到线程得到了notify()和notifyAll()消息,线程才会进入“可执行”状态。
2,sleep()方法:是一个使线程暂时停止一段执行时间的方法,该时间由给定的毫秒数决定。下面演示一个使用sleep()方法的例子,如下。
public void run()
{
int count=3;
while(true)
{
System.out.println(this); //打印对象
try
{
sleep(1000); //休眠1000ms
}catch(Exception e)
{
e.printStackTrace();
}
&n
相关文档:
<%
URL url = new URL("http://www.itpub.net");
//建立URL对象,并实例化为url,获得要抓取的网页地址
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream(),"GB2312"));
//建立BufferedReader对象,并实例化为reader,这里的GB2312是要抓取的网页编码格式
whi ......
在java中实质只存在一种传递方式:即值传递。 而引用传递是对C/C++而言的。结论:
对于基本类型,在方法体内对方法参数进行重新赋值,并不会改变原有变量的值。
对于引用类型,在方法体内对方法参数进行重新赋予引用,并不会改变原有变量所持有的引用。
方法体内对参数进行运算,不影响原有变量的值。
......
文件名:Sjis.java
class Sj
{
public static void main(String[] args)
{
}
}
-------------------------------------
执行:
javac Sjis.java
Java Sj
、、、、、、、、、、、、、、、、、
文件名:Sjis.java
public class Sjis.java
{
public static ......
Java学习拾遗2--由String str=”abc”引出的故事(综合了下边的一些指点已更新,感谢在下边留言交流的朋友,谢谢你们的指点!) 收藏 此文于2009-11-10被推荐到CSDN首页
如何被推荐?
话题是由如下的事情引出的:
public class StringTest {
public static void main(String[] args) {
......
转 : http://www.jcourse.cn/read/234
2009-03-02 作者:
zhangtaolv
在我们日常开发中,经常会遇到对文本的操作,并且在一般的MIS系统中,文本操作尤为多,如用户名、文章内容、文章标题、合同内容等。在之前的教程中,我也给大家讲解了Java中最基本的字符串操作的类,String。在之前的教程中我也给大家讲了Str ......