`

JAVA_线程

    博客分类:
  • j2se
 
阅读更多
//子线程循环2次,主线程5,接着子又循环2次,主循环5,如此循环20次.

public class Four {

	public static void main(String[] args) {
 
		final Business bbb = new Business();
		
		new Thread(new Runnable(){
			@Override
			public void run() {
				for(int i=1;i<=20;i++){
					bbb.getSub(i);
				}
			}
			
		}).start();	
		
		for(int i=1;i<=20;i++){
			bbb.getMain(i);
		}
	}

}

class Business{
	boolean flag = true; //true---sub
	
	public synchronized void getSub(int xun){
		if(flag){
			//子线程循环2次
			for(int i=1;i<=2;i++){
				System.out.println("zi线程---总"+xun+"----小"+i);
			}
			flag = false;
			this.notify();
		}else{
			try {
				this.wait();
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}
	}
	
	public  synchronized void getMain(int xun){
		if(flag){
			try {
				this.wait();
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}else{
			//主线程5
			for(int i=1;i<=5;i++){
				System.out.println("主线程---总"+xun+"----小"+i);
			}
			flag = true;
			this.notify();
		}
	}
}

 zi线程---总1----小1
zi线程---总1----小2
主线程---总2----小1
主线程---总2----小2
主线程---总2----小3
主线程---总2----小4
...

 

 

分享到:
评论

相关推荐

    JAVA_线程同步与死锁

    一个详细讲解JAVA_线程同步与死锁的例子 希望可以帮助到你。

    Java__线程.mp4

    Java__线程.mp4

    java_type_train.rar_java 多线程_java 打字 程序_train_线程

    1. **线程状态**:Java线程有新建、可运行、运行、等待、阻塞和死亡等六种状态,理解这些状态及其转换对于调试和优化多线程程序至关重要。 2. **同步机制**:包括synchronized关键字、wait()、notify()和notifyAll()...

    JAVA-JavaThreadProgramming-Sams.zip_JAVA 设计_java 多线程_java 线程_多线程

    Java线程编程是Java开发中的重要组成部分,尤其在构建高性能、高并发的应用程序时不可或缺。本资料"JAVA-JavaThreadProgramming-Sams.zip"提供了一套详细的教程,旨在深入讲解Java中的多线程设计和实现。 Java多...

    java多线程设计模式_java_设计模式_多线程_多线程课题_

    Java多线程设计模式是Java开发中的核心概念,它涉及到如何高效、安全地在多个执行线程之间共享资源和协调任务。设计模式是解决特定问题的成熟方案,它们是编程经验的结晶,可以帮助开发者在面临多线程挑战时快速找到...

    java_Thread.rar_java 多线程_java多线程

    Java多线程是Java编程中的重要概念,它允许程序同时执行多个任务,从而提高系统资源的利用率和程序的响应速度。在Java中,通过实现Runnable接口或者继承Thread类可以创建并运行多线程。本资料"java_Thread.rar"提供...

    Java多线程编程核心技术_完整版_java_

    Java多线程编程是Java开发中的重要组成部分,它允许程序同时执行多个任务,极大地提高了程序的效率和响应性。在Java中,多线程主要通过继承Thread类或实现Runnable接口来实现。本教程《Java多线程编程核心技术》将...

    java_movestar.rar_j2se_线程控制

    在这个名为"java_movestar.rar_j2se_线程控制"的压缩包中,我们很显然会探讨如何在J2SE环境中使用线程来控制程序的执行,特别是针对一个有趣的实例——在屏幕上画出移动的星星。 线程在计算机科学中是并发执行的...

    tt.rar_ java_Java 代理服务器_java 线程_代理服务器_服务器

    在Java中实现代理服务器涉及到多个关键概念和技术,包括网络编程、多线程以及服务器端的处理逻辑。 首先,我们需要理解Java中的网络编程基础。Java提供了一系列的类库,如`java.net.Socket`和`java.net....

    seaworld_java线程_java_doingw91_

    在“seaworld_java线程_java_doingw91_”这个项目中,我们主要探讨的是如何使用Java Swing构建一个海底世界的模拟应用,并且涉及到Java线程的运用。这是一个很好的实践示例,可以帮助我们深入理解Java图形用户界面...

    JAVA专题技术综述之线程篇.rar_java 线程_java 线程

    Java线程是并发编程的核心部分,它允许程序在同一时间执行多个任务,从而提高了系统资源的利用率和程序的响应速度。本专题将深入探讨Java中的线程技术,包括线程的创建、状态管理、同步机制以及相关API的使用。 在...

    Java_多线程与并发编程总结.doc

    Java多线程与并发编程是Java开发中至关重要的一部分,它涉及到如何高效地利用CPU资源,以实现程序的并行执行。在操作系统层面,多任务和多进程是通过分配不同的内存空间来实现的,而线程则共享同一进程的内存,这...

    tcp_test.rar_java tcp 多线程_java tcp 线程_tcp 多线程_tcp线程_多线程 TCP

    本项目"tcp_test.rar"似乎是一个关于Java实现TCP多线程传输的实例,它涵盖了发送方和接收方的并发处理。 首先,让我们了解TCP多线程的概念。在单线程TCP服务器中,服务器接收到一个客户端连接后,会阻塞等待该连接...

    java_thread_cn.rar_Java 线程池_java thread books_java线程_线程池_线程池调度

    Java线程调度策略包括抢占式调度和合作式调度。在Java中,默认采用的是抢占式调度,即线程的执行优先级由JVM决定,高优先级的线程可能会中断低优先级线程的执行。然而,开发者可以通过设置线程的优先级来影响调度,...

    JAVA教程_第六讲_Java的线程和Java_Applet.doc

    JAVA教程_第六讲_Java的线程和Java_Applet.doc

    深入浅出 Java 多线程.pdf_java_

    Java多线程是Java编程中的核心概念,尤其在如今并发性能至关重要的软件开发中,它的重要性不言而喻。深入理解Java多线程能够帮助开发者有效地利用计算机资源,提高程序的执行效率,优化系统性能。 Java多线程的实现...

    java10_线程.ppt

    java10_线程.ppt

    7.多线程__阶乘_java_阶乘运算_西南科技大学_多线程_

    多线程__阶乘.txt”这个文件中,可能包含了实验的详细步骤、代码示例以及对多线程阶乘运算的解释。文件内容可能包括以下部分: 1. **理论基础**:介绍阶乘的基本概念,以及多线程在并发计算中的作用。 2. **线程...

    duoxianchengxiazai.rar_Java 多线程 下载_java 多线程下载

    在标签"java_多线程_下载 java_多线程下载"中,我们再次确认了主题,即使用Java语言进行多线程文件下载。下面将详细讲解Java多线程下载的相关知识点: 1. **线程基础**:在Java中,线程是程序中的执行流。`Thread`...

    choujiangxitong.rar_JAVA 抽奖_抽奖_抽奖 JAVA_抽奖 线程_抽奖系统

    本项目“choujiangxitong.rar”提供了一个基于Java语言实现的抽奖系统,它利用了线程技术来实现抽奖过程的并发和实时性,同时具有可视化界面,使得用户能够直观地看到抽奖结果。 1. **Java编程基础**:Java是一种...

Global site tag (gtag.js) - Google Analytics