# 生命游戏
关于生命游戏的介绍可以查看维基百科:
[生命游戏](https://zh.wikipedia.org/wiki/%E5%BA%B7%E5%A8%81%E7%94%9F%E5%91%BD%E6%B8%B8%E6%88%8F)
# 实现
这是和马总一起参加ThoughtWorks线下编程的一个题,完成生命游戏的基本逻辑并显示。
我们采用了JFrame作为显示界面,采取文件作为初始矩阵的输入,中途可以控制游戏的开始和暂停,以及演变速度的控制。具体效果图如下:
![效果图](https://github.com/wangli135/TXGameOfLife/blob/master/screentshoot/game_of_life.gif)
凭借相对比较酷炫的效果以及暂停、开启、速度调节这种功能,最后有幸得了个第一名。
没有合适的资源?快使用搜索试试~ 我知道了~
JAVA生命游戏多线程模式(使用n个线程并行读取初始pgm文件,把图像分割为n份,分别计算出下一轮的细胞状态,然后重新整合)
共67个文件
pgm:45个
java:10个
xml:7个
1 下载量 201 浏览量
2023-06-28
11:34:56
上传
评论
收藏 4.22MB RAR 举报
温馨提示
5.将生命游戏由单线程模式改为多线程模式,使用n个线程并行读取初始pgm文件,把图像分割为n份,分别计算出下一轮的细胞状态,然后重新整合为一个新一代细胞状态图。要求程序无死锁(Deadlock Free),无竞争条件(No Race Condition),无久等(No Long Waiting)等状态发生,可以采用任何一种线程同步机制实现,建议首选BlockingQueue。 (1)增加一项ticker功能,报告每隔两秒钟活着的细胞数量。 (2)设计一个简单的GUI,能够控制GOL游戏引擎功能,“start”开始运行,“pause”暂停程序运行,“continue”继续运行程序,“quit”结束程序运行。Ticker功能可以加在GUI里。 (3)采用工具对程序性能进行基准测试(BenchMark Test),对测试结果进行可视化,详细分析结果影响因素,比如线程数量、执行的次数对性能的影响,比较执行的时间,整体吞吐量等多维度目标。 撰写报告,内容包括:介绍(包括实现的功能、采用的算法、测试方式、性能结果),具体功能实现及流程,可视化
资源推荐
资源详情
资源评论
收起资源包目录
第5题.rar (67个子文件)
第5题
第5题实验报告.docx 129KB
GameOfLife
GameOfLife.iml 565B
src
gameOfLifeGUI
model
CellMatrix.java 3KB
Main.java 224B
ui
GameOfLifeFrame.java 5KB
util
Utils.java 962B
PgmIo.java 7KB
ParallelGameOfLive
ParallelGameOfLivePerformanceTest.java 8KB
outputImage
2023_06_23_12_38_25_512x512.pgm 256KB
2023_06_23_12_21_02_256x256.pgm 64KB
2023_06_23_02_21_21_128x128.pgm 16KB
2023_06_23_02_22_21_128x128.pgm 16KB
2023_06_23_01_01_37_5120x5120.pgm 25MB
2023_06_23_12_56_37_5120x5120.pgm 25MB
2023_06_23_12_29_25_512x512.pgm 256KB
2023_06_23_12_36_25_512x512.pgm 256KB
2023_06_23_12_31_25_512x512.pgm 256KB
2023_06_23_12_19_02_256x256.pgm 64KB
2023_06_23_02_13_12_16x16.pgm 269B
2023_06_23_12_26_25_512x512.pgm 256KB
2023_06_23_12_43_37_5120x5120.pgm 25MB
2023_06_23_02_19_21_128x128.pgm 16KB
2023_06_23_02_11_12_16x16.pgm 269B
2023_06_23_12_32_25_512x512.pgm 256KB
2023_06_23_12_20_02_256x256.pgm 64KB
2023_06_23_12_30_25_512x512.pgm 256KB
2023_06_23_02_20_21_128x128.pgm 16KB
2023_06_23_02_10_12_16x16.pgm 269B
2023_06_23_02_14_32_64x64.pgm 4KB
2023_06_23_12_37_25_512x512.pgm 256KB
2023_06_23_02_16_32_64x64.pgm 4KB
2023_06_23_12_22_02_256x256.pgm 64KB
2023_06_23_12_18_02_256x256.pgm 64KB
2023_06_23_02_15_32_64x64.pgm 4KB
2023_06_23_12_34_25_512x512.pgm 256KB
2023_06_23_12_23_25_512x512.pgm 256KB
2023_06_23_12_28_25_512x512.pgm 256KB
2023_06_23_12_35_25_512x512.pgm 256KB
2023_06_23_12_27_25_512x512.pgm 256KB
2023_06_23_12_24_25_512x512.pgm 256KB
2023_06_23_12_33_25_512x512.pgm 256KB
2023_06_23_02_23_21_128x128.pgm 16KB
2023_06_23_12_49_37_5120x5120.pgm 25MB
2023_06_23_12_25_25_512x512.pgm 256KB
2023_06_23_02_12_12_16x16.pgm 269B
2023_06_23_12_17_02_256x256.pgm 64KB
2023_06_23_01_08_37_5120x5120.pgm 25MB
EvolutionSaveToPGM
Utils.java 655B
CellMatrix.java 3KB
PgmIo.java 7KB
Main.java 3KB
inputImage
256x256.pgm 64KB
16x16.pgm 269B
128x128.pgm 16KB
64x64.pgm 4KB
5120x5120.pgm 25MB
512x512.pgm 256KB
out
production
.idea
project-template.xml 89B
description.html 97B
uiDesigner.xml 9KB
libraries
junit_4_11.xml 210B
vcs.xml 180B
workspace.xml 7KB
misc.xml 478B
modules.xml 260B
.gitignore 184B
README.md 706B
共 67 条
- 1
资源评论
城南皮卡丘
- 粉丝: 345
- 资源: 18
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功