微信号:woodywangjinsong

介绍:永远免费的测试原创视频和测试好文!

人工智能?多线程模式。

2017-03-03 08:06 金阳光

又到周五了,我记得互联网一位大佬说:人工智能的时代快要来临了。


个人感觉计算机厉害的是能深度学习,不断进化。而且可以联网所有计算机中央大脑进行协同工作和处理。可能10年以后,计算机在很多领域都能超越人类。


今天就谈谈设计模式里的多线程模式。


有一个场景:一家人准备下班后去北京王府井吃饭。老爸离的最远要3小时到,老妈其次2小时到,我最近1小时到。那我们怎么样写测试程序呢?


1、定义一个familyToRes。用休眠3秒,2秒,1秒来代替3、2、1小时。


2、所有人到了,可以一起吃饭了


3、写三个多线程测试下


效果如下,大家仔细看结果。每次都不一样。大家还没到就一起吃饭了。


那么正确的程序该如何写呢?我们定义一个计数器。当某个人到了计数器减一

再设置一个死循环来不断坚持i是否等于0。


再次看看运行效果,结果没问题了


但是测试发现,资源消耗甚大,一个死循环。是否有更好的方法呢?答案是有的。设置一个同步线程助手类CountDownLatch,他可以不断监听多个线程,并在线程完成时做出响应。代码如下


最后结果运行如下。


欢迎大家来稿分享自己测试和学习心得,来稿联系金阳光。qq邮箱:247966124@qq.com





长按二维码-识别图中二维码




加入免费公益分享的大家庭吧!


让我们一起学习,快速成长。



长按二维码-识别图中二维码



 
金阳光自动化测试 更多文章 浅谈Web缓存 自动化接口测试 用大数据将LinkedIn内容运营效果提升10倍?我是如何做到的 Web测试和App测试有什么区别? 深圳迅雷网络技术有限公司
猜您喜欢 Facebook 2015年的开源成绩单 两会关注用户隐私保护,互联网企业如何履责 iOS狂暴之路---从iOS的第一个应用中能学到哪些知识 又一个技术人发起的大会GIAC-高可用架构大会 为什么没有人知道鲍比-墨菲?