`
浴盆儿
  • 浏览: 80497 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

线程随笔-测试sleep

    博客分类:
  • Java
阅读更多
package test.Thread;

import java.util.Date;

public class testSleep {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Thread1 t1 = new Thread1();
		t1.start();
		for (int i = 1; i < 5; i++) {
			System.out.println("main thread times :" + i);
			try {
				Thread.sleep(5000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				// e.printStackTrace();
				System.out.println("main thread is interrupted");
			}
		}
		t1.interrupt();
	}
}

class Thread1 extends Thread {

	@Override
	public void run() {
		// TODO Auto-generated method stub
		while (true) {
			System.out.println("this is Thread1  " + new Date());
			try {
				Thread.sleep(1000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				// e.printStackTrace();
				System.out.println("Thread1 is Interrupted");
				return;
			}
		}
	}

}

 The result:

 

main thread times :1
this is Thread1  Fri Sep 05 20:38:25 CST 2008
this is Thread1  Fri Sep 05 20:38:27 CST 2008
this is Thread1  Fri Sep 05 20:38:28 CST 2008
this is Thread1  Fri Sep 05 20:38:29 CST 2008
this is Thread1  Fri Sep 05 20:38:30 CST 2008
main thread times :2
this is Thread1  Fri Sep 05 20:38:31 CST 2008
this is Thread1  Fri Sep 05 20:38:32 CST 2008
this is Thread1  Fri Sep 05 20:38:33 CST 2008
this is Thread1  Fri Sep 05 20:38:34 CST 2008
this is Thread1  Fri Sep 05 20:38:35 CST 2008
main thread times :3
this is Thread1  Fri Sep 05 20:38:36 CST 2008
this is Thread1  Fri Sep 05 20:38:37 CST 2008
this is Thread1  Fri Sep 05 20:38:38 CST 2008
this is Thread1  Fri Sep 05 20:38:39 CST 2008
this is Thread1  Fri Sep 05 20:38:40 CST 2008
main thread times :4
this is Thread1  Fri Sep 05 20:38:41 CST 2008
this is Thread1  Fri Sep 05 20:38:42 CST 2008
this is Thread1  Fri Sep 05 20:38:43 CST 2008
this is Thread1  Fri Sep 05 20:38:44 CST 2008
this is Thread1  Fri Sep 05 20:38:45 CST 2008
Thread1 is Interrupted

2
0
分享到:
评论

相关推荐

    Python自动化多线程测试-单线程/多线程

    在多线程代理IP测试中,我们可以为每个线程分配不同的代理IP,这样可以同时进行多个登录尝试,提高测试效率。例如,创建一个线程池,将每个登录任务作为参数传递给线程,每个线程负责一个登录流程。需要注意的是,多...

    嵌入式实时操作系统的多线程计算--基于ThreadX和ARM--随书光盘(自己备份)

    Express Logic's ThreadX for Win32 Demo Using Visual C/C++ This demo program is intended for use with the book titled "Real-Time Embedded Multithreading: Using ThreadX and ARM" by Edward L....

    VB.Net-C#多线程Thread-代理委托delegate编程

    最近收集的VB.Net-C#多线程Thread-代理委托delegate编程。文章列表: c#.net多线程同步.txt C#WebBrowser页面与WinForm交互技巧一.txt C#多线程编程-多细全.txt C#多线程编程简单实例.txt C#多线程窗体控件安全访问....

    操作系统实验-----MFC线程--购票系统演示

    操作系统实验中的“MFC线程--购票系统演示”是一个典型的多线程编程示例,它主要涉及了C++编程语言中的Microsoft Foundation Classes (MFC)库,以及操作系统层面的线程管理和线程同步概念。MFC是微软提供的一套面向...

    多线程实例-摇奖机源码

    C#中的`Random`类可以用来生成随机数,而`Thread.Sleep`方法可以用于模拟延迟,增加摇奖的真实感。 在多线程编程中,线程安全是必须考虑的问题。如果多个线程访问共享资源,可能会出现竞态条件,导致数据不一致。...

    前端开源库-try-thread-sleep

    总之,`try-thread-sleep`是一个旨在解决前端开发中线程睡眠需求的开源库,通过智能地利用现有技术,尽可能地模拟出线程睡眠的行为,提高代码的可读性和控制性。对于需要控制执行顺序的复杂前端应用,这个库提供了...

    Bianco-Go-To-Hunt-Then-Sleep.zip

    【标题】"Bianco-Go-To-Hunt-Then-Sleep.zip" 提供的资源似乎是一个关于编程或软件开发的学习资料,尽管标题本身并不直接指示具体的技术主题。然而,我们可以根据通常的命名惯例来推测,这可能是一个项目、教程或者...

    Java多线程--让主线程等待所有子线程执行完毕

    ### Java多线程--让主线程等待所有子线程执行完毕 #### 核心知识点解析 在Java多线程环境中,让主线程等待所有子线程执行完毕是一个常见的需求,尤其是在处理大量数据或进行高性能计算时。这不仅有助于正确测量...

    Java多线程--等待所有子线程执行完的五种方法.docx

    在Java多线程编程中,有时我们需要确保所有子线程执行完毕后再进行后续操作,例如在并发测试、数据聚合或资源清理等场景。本篇文章将详细介绍五种在Java中等待所有子线程执行完的方法。 ### 方法一:使用`sleep`...

    java多线程源码-source

    sleep()方法使当前线程进入睡眠状态;join()让当前线程等待指定线程结束后再继续执行;yield()则让当前线程暂停,给其他线程执行的机会。interrupt()用于中断线程,配合isInterrupted()或interrupted()检查线程是否...

    多线程测试(是多线程的测试,对学习多线程的朋友有用)

    2. 线程安全测试:检查代码是否正确地处理了多线程环境下的数据访问。 3. 资源消耗测试:分析多线程运行时内存、CPU和其他资源的使用情况。 4. 并发测试:评估程序在高并发场景下的稳定性和响应能力。 5. 错误处理和...

    Java多线程-线程间的通信

    总结来说,`wait()`和`sleep()`虽然都可以使线程暂停执行,但它们的目的和适用场景不同。`wait()`更多用于线程间的通信和协作,而`sleep()`则用于简单的延时控制。在实际开发中,根据具体需求选择合适的方法是非常...

    Python库 | big-sleep-0.2.7.tar.gz

    然而,特定的库如"big-sleep"可能提供了更高级的功能,比如更精确的延迟控制、异步睡眠、多线程或并发环境下的睡眠管理,或者有其他定制化的特性,例如延迟执行任务的队列、定时任务等。 Python作为一门广泛使用的...

    java多线程例子-生产者消费者

    在Java编程中,多线程是一种重要的技术,它允许程序同时执行多个任务,从而提高效率和性能。在本示例中,“java多线程例子-生产者消费者”旨在展示如何利用多线程来实现生产者和消费者模式。这种模式是并发编程中的...

    Linux多线程编程,替代sleep的几种方式

    我只想要进程的某个线程休眠一段时间的,可是用sleep()是将整个进程都休眠的,这个可能达不到,我们想要的效果了。目前我知道有三种方式:  1、usleep  这个是轻量级的,听说能可一实现线程休眠,我个人并不...

    android 网络应用轻量框架-多线程管理-高效缓存-设计模式

    开启过多线程,导致系统频繁切换多个线程,导致处理速度过慢,经常出现未响应。 代码经常写的换繁多无序,维护困难。 使用类似银行叫号系统 线程池内等待网络请求的任务=(排队的人) 最大三个线程=(银行柜台处理...

    JVM线程状态和Thread.sleep的实现原理探究.pdf

    在探究JVM线程状态以及Thread.sleep的实现原理时,我们首先需要了解Java线程与操作系统线程之间的关系。在Java虚拟机(JVM)中,每个线程通常都是以一对一的关系映射到操作系统线程上的。然而,尽管两者在实现上是...

    多线程sleep,yield,wait区别

    `sleep`, `yield`, 和 `wait` 是 Java 中用于线程管理的三个重要方法,它们各自有着不同的功能和用途。理解它们的区别有助于编写出更加高效和可控的多线程程序。 1. **sleep() 方法** - `Thread.sleep(millisecond...

    线程-线程池-锁-集合-Map-队列.docx

    `Thread.sleep()`方法让当前线程暂停执行指定时间,不释放锁,而`yield()`则让当前线程让出CPU执行权,但不释放锁,通常用于让相同或更高优先级的线程有机会执行。`join()`方法使得当前线程等待指定线程执行完毕后再...

    java多线程测试实例

    - 守护(Timed Waiting):线程在等待一段时间或等待某个事件发生,如`sleep()`或`join()`。 - 结束(Terminated):线程执行完毕或被中断。 5. **线程优先级** - Java提供了10个级别的线程优先级,`Thread.MIN_...

Global site tag (gtag.js) - Google Analytics