- /**
- * 一段模拟龟兔赛跑的多线程代码。<br>
- * 兔子比乌龟快5倍,但休息的时间长10倍。
- *
- * @author 赵学庆,Java世纪网(java2000.net)
- *
- */
- public class T {
- public static void main(String[] args) {
- TortoiseRace a = new TortoiseRace();
- Thread runner1 = new Thread(a);
- RabbitRace b = new RabbitRace();
- Thread runner2 = new Thread(b);
- runner1.start();
- runner2.start();
- while (ready < 2) {
- try {
- Thread.sleep(1);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- }
- synchronized (lock) {
- lock.notifyAll();
- }
- }
- static Object lock = new Object();
- static int ready = 0;
- }
- class TortoiseRace implements Runnable {
- public void run() {
- synchronized (T.lock) {
- T.ready++;
- try {
- T.lock.wait();
- } catch (InterruptedException e1) {
- e1.printStackTrace();
- }
- }
- int TortoiseDistance = 0;
- for (int i = 0; TortoiseDistance <= 1000; i++) {
- TortoiseDistance++;
- System.out.println("乌龟跑了1米!");
- try {
- Thread.sleep(1);
- } catch (InterruptedException e) {
- }
- }
- System.out.println("乌龟已经跑完了比赛路程!");
- }
- }
- class RabbitRace implements Runnable {
- public void run() {
- T.ready++;
- synchronized (T.lock) {
- try {
- T.lock.wait();
- } catch (InterruptedException e1) {
- e1.printStackTrace();
- }
- }
- int RabbitDistance = 0;
- for (int j = 0; RabbitDistance <= 1000; j++) {
- RabbitDistance += 5;
- System.out.println("兔子跑了5米!");
- try {
- Thread.sleep(10);
- } catch (InterruptedException e) {
- }
- }
- System.out.println("兔子跑完了比赛路程!");
- }
- }
相关推荐
深空探测处理软件USGS-ISIS的下载安装
深空探测处理软件USGS-ISIS下载安装教程
多线程模拟一下龟兔赛跑的情景
【代码】多线程模拟一下龟兔赛跑的情景。
DIY便携式PEMF磁脉冲治疗仪:百元成本自制生物物理疗法设备
脉冲电磁场(PEMF)疗法是一种基于生物物理原理的非侵入性技术,它通过特定频率的电磁脉冲作用于细胞层面,影响细胞膜电位和离子通道活动,从而可能调节细胞代谢与功能。其技术价值在于提供了一种物理干预手段,在健康科技和生物黑客领域被探索用于放松、恢复等场景。实现PEMF的核心是通过信号发生与功率放大驱动电磁线圈产生可控磁场。本文以蓝牙音频模块和智能手机App为切入点,详细解析了如何利用低成本电子元件(如DFRobot XY-WRBT模块和漆包线线圈)构建一个可自定义频率的便携式PEMF设备,涵盖了从电路设计、线圈
CH8-多线程
【案例8-1】 龟兔赛跑 【案例介绍】 1.任务描述 众所周知的“龟兔赛跑”故事,兔子因为太过自信,比赛中途休息而导致乌龟赢得了比赛.本案例要求编写一个程序模拟龟兔赛跑,乌龟的速度为1米/1500毫秒,兔子的速度为5米/500毫秒,等兔子跑到第700米时选择休息10000毫秒,结果乌龟赢得了比赛。 2.运行结果 运行结果如图8-1所示。 【案例目标】 学会分析”龟兔赛跑”任务实现的逻辑思路。 能够独立完成”龟兔赛跑”程序的源代码编写、编译以及运行。 能够在程序中使用多线程完成逻辑思路。
Matlab PolySpace 静态分析实战:从零搭建嵌入式代码安全防线
本文详细介绍了如何使用Matlab PolySpace进行嵌入式代码静态分析,从环境搭建到实战配置,帮助开发者提前发现内存溢出、未初始化变量等潜在缺陷。通过案例分享和进阶技巧,展示如何提升代码安全性和可靠性,特别适合汽车ECU、医疗设备等安全关键系统开发。
相机光学(三十八)——VCM(Voice Coil Motor)音圈马达
VCM(Voice Coil Motor)音圈马达全称Voice Coil Montor,电子学里面的音圈电机,是马达的一种。因为原理和扬声器类似,所以叫音圈电机,具有高频响、高精度的特点。其主要原理是在一个永久磁场内,通过改变马达内线圈的直流电流大小,来控制弹簧片的拉伸位置,从而带动上下运动。手机摄像头广泛的使用VCM实现自动对焦功能,通过VCM可以调节镜头的位置,呈现清晰的图像。弹片式结构滚珠式结构摩擦式结构Open loop开马达Close loop闭环马达。
Java多线程--模拟龟兔赛跑
在这种方式下,可以多个线程共享同一个目标对象,所以非常适合多个相同线程来处理同一份资源的情况,从而可以将CPU代码和数据分开,形成清晰的模型,较好地体现了面向对象的思想。(2)在Thread类有Thread.sleep()方法,来控制兔子的睡眠时间,可以尝试使用不同的睡眠时间来让乌龟赢还是兔子赢。System.out.println("兔子跑完" + i + "米");System.out.println("乌龟跑完"+i+"米");System.out.println("我的线程...");
基于Simulink的电动汽车电池管理系统热管理优化仿真
电动汽车电池管理系统(Battery Management System, BMS)中的热管理是确保电池性能、安全性和寿命的关键环节。温度过高或过低都会显著影响电池的工作效率和寿命,因此需要对电池组进行精确的热管理。基于MATLAB/Simulink的仿真平台可以用于建模和优化电池热管理系统,包括热分布预测、冷却策略设计以及热平衡控制等。本项目旨在构建一个完整的电动汽车电池热管理优化仿真模型,并通过仿真验证系统的性能。
利用多线程写一个龟兔赛跑游戏
大致思路:1.利用swing创建窗口,开始按钮,复原按钮,乌龟图片、兔子图片2.点击开始进行游戏,再次点击暂停游戏,再次点击继续游戏,点击复原按钮回到起点2.获取到兔子和乌龟的x坐标,创建两个线程每次加0~5随机,每加完一次休眠0~500毫秒3.当有其中一个到达终点时,停止游戏,点击复原再点击开始可以再次开始创建窗口代码如下: 代码也很好理解,主要是开始按钮这里:继续游戏方法: 暂停游戏方法...
PCL 八叉树的使用
八叉树(Octree)是一种空间划分的数据结构,广泛应用于三维点云的处理和分析。八叉树通过将空间递归地划分为八个子区域,可以有效地组织和索引三维点数据,提升点云的查询、降采样和配准等操作的效率。
【物联网】基于LORA组网的远程环境监测系统设计(ThingsCloud云平台版)_资料编号34
实现一主多从的LORA组网远程通信,主机和两个从机都配备了STM32F103单片机与 LoRa 模块,主机作为中心设备及WIFI网关,负责接收和发送数据到远程物联网平台和手机APP,两个从机则负责采集数据并通过各自的 LoRa组网将数据发送给主机。
龟兔赛跑(Runnable接口实现)
//模拟归途赛跑 public class Race implements Runnable { //胜利者 private static String winner; @Override public void run() { for (int i = 0; i <= 100; i++) { //模拟兔子休息 if ("兔子".equals(Thread.currentThread().getNam
【Bug已解决】openclaw max turns reached / Tool calls exceeded limit — OpenClaw 最大轮次超限解决方案
OpenClaw 在执行过程中达到最大轮次限制任务未完成,本质是 --max-turns 设置过小或任务过于复杂。文中给出增加轮次、--continue 继续、分步执行等完整方案。
一段模拟龟兔赛跑的多线程程序
/** * 一段模拟龟兔赛跑的多线程程序。 * 兔子比乌龟快5倍,但休息的时间长10倍。 * * @author 赵学庆,Java世纪网(java2000.net) * */ public class T { public static void main(String[] args) { TortoiseRace a = new Tortois...
efm32 入门.pdf
本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。
VC中sqlite的使用
在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示
Java多线程——模拟龟兔赛跑的场景
题目分析 1. 编写龟兔赛跑多线程程序,设赛跑长度为100米,先完成的一方胜利。 2. 兔子要休眠一段时间,但是跑步速度更快,乌龟不休眠,但是速度慢. 3. 编写兔子和乌龟类 RabbitAndTurtle继承Thread.然后编写逻辑. 4. 使用Thread的sleep(long milis)方法使线程休眠来控制兔子休眠时间. 5. 用Math.random()方法或setPrior...
Data-Structures-and-Algorithm-Analysis-in-Java.pdf
作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...
Python使用matplotlib可视化模拟龟兔赛跑折线图
可视化模拟龟兔赛跑折线图 import matplotlib.pyplot as plt import numpy as np plt.rcParams['font.sans-serif'] = 'simhei' plt.rcParams['axes.unicode_minus']=False #时间轴 t = np.arange(0,120,0.5) # np.piecewise(array,[condition1,condition2],[value1,value2]) # 即:传入一个a
WINCC7.3破解文件
WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!
java多媒体龟兔赛跑_Java多线程——模拟龟兔赛跑的场景
题目分析1. 编写龟兔赛跑多线程程序,设赛跑长度为100米,先完成的一方胜利。2. 兔子要休眠一段时间,但是跑步速度更快,乌龟不休眠,但是速度慢.3. 编写兔子和乌龟类 RabbitAndTurtle继承Thread.然后编写逻辑.4. 使用Thread的sleep(long milis)方法使线程休眠来控制兔子休眠时间.5. 用Math.random()方法或setPriority控制双方线优先...
【Java代码】多线程案例-龟兔赛跑
用java实现以下要求,编写一个程序模拟龟兔赛跑,乌龟的速度为1米/1000毫秒。兔子的速度为1.2米/1000毫秒。
练习:PTA-7-22 龟兔赛跑 (20 分)【模拟】
题目链接:7-22 龟兔赛跑 (20 分) 思路:需要两个距离变量Dtui,Dgui分别记录龟兔走过的时间,还需要时间变量t记录总的时间变化,另外还需要一个兔子的时间变量t1,来与总的时间变量做比较,兔子的休息与否可以用bool定义一个rest #include<iostream> using namespace std; int main() { int T,t=0,t1=0;...
试题 基础练习 龟兔赛跑预测 java代码
试题 基础练习 龟兔赛跑预测 java代码 import java.util.Scanner; public class Rabbit_tortoise { public static void main(String[] args) { // TODO 自动生成的方法存根 //【兔子和乌龟】 Scanner sc = new Scanner(System.in); //...
龟兔赛跑的小游戏
下面这段代码模拟了龟兔赛跑爬山的情况,其中有个时钟触发设置每秒执行一次循环,乌龟的规则是:50% 的机会快走(右移三格);20% 的机会下滑(左移六格);30% 的机会慢走(右移一格). 兔子的规则是:20% 的机会睡觉(不移动);20% 的机会大跳(右移九格);10% 的机会大滑(左移十二格);30% 的机会小跳(右移一格);20% 的机会小滑(左移两格). 其中最先走到整 70 格的胜利,超过
3313



被折叠的 条评论
为什么被折叠?



