2口5X4二940这道题怎么做

Java(68)
这道面试题的内容是,要求两个线程交替打印,打印出&12A34B56C78D910E16H22K28N34Q40T46W52Z&。
一个线程只打印数字,另一个线程只打印字母,打印数字的线程打印两个数字后,打印字母的线程打印一个字母,然后交替下去直到打印完所有字母,数字打印到52即可。
这个的思路就是线程交替运行,交替运行的关键在于,一个线程执行完一个周期,立即挂起,同时通知另一个线程执行,另一个线程执行完,同样立即挂起,再通知之前的线程。两个线程都需要挂起和获得通知,但是两个线程是互相独立的,所以用对象监视器锁是不合适的,因为对象监视器的挂起和通知是无差异的,有可能会在挂起后将本线程立即激活,而需要被激活的线程仍在被挂起。。。所以这里要用ReentrantLock和两个Condition,不多说了看代码。
//线程A负责打印数字
class ThreadA extends Thread{
//一个锁和两个Condition
& & & & private L
private Condition c1;
private Condition c2;
//构造方法注入这些引用
public ThreadA(Lock lock,Condition c1,Condition c2){
this.lock=
this.c1=c1;
this.c2=c2;
//线程开始
public void run(){
lock.lock();//加锁
& & & & & & & & & & & & //循环52次
for(int i=1;i&=52;i++){
//i为奇数时可以打印,打印两次
& & & & & & & & & & & & & & & & & & &if(i%2!=0){
System.out.print(i+&&+(i+1));
c2.signal();//通知c2这个condition开始运行
c1.await();//i为偶数时c1挂起
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
lock.unlock();
class ThreadB extends Thread{
private Condition c1;
private Condition c2;
public ThreadB(Lock lock,Condition c1,Condition c2){
this.lock=
this.c1=c1;
this.c2=c2;
public void run(){
lock.lock();
& char c='A';//定义char变量作为打印变量
& for(int i=0;i&51;i++){//循环51次,因为遍历26个字母并且每个字母之间插入两个数字的话,需要循环51次,我是调试出来的,最初我也不知道需要51次。。。这里并不把char作为循环变量因为涉及到的是奇数次循环时不打印,所以char如果作为循环变量会跳过奇数次循环,会丢失打印。
& if(i%2==0){//偶数次循环时打印c并自增,通知c1这个condition可以运行。
& System.out.print(c++);
& c1.signal();
& }else{//循环奇数次时,c2这个condition挂起。
& c2.await();
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
lock.unlock();
这是两个线程类,看main方法。
public static void main(String[] args) throws InterruptedException {
Lock lock=new ReentrantLock();
Condition c1=lock.newCondition();
Condition c2=lock.newCondition();
ThreadA a=new ThreadA(lock,c1,c2);
ThreadB b=new ThreadB(lock,c1,c2);
a.start();
Thread.sleep(50);
b.start();
这个没什么难的,线程A先启动,然后线程B再启动。结果正确。
我写的不一定是最好的,肯定有更优的解法,欢迎大家指正。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:5765次
排名:千里之外
原创:73篇
(5)(5)(6)(27)(19)(11)3.62×5.37+63.8×0537这道题怎么作_百度知道手机签到经验翻倍!快来扫一扫!
自暴一下自己的X4 940超频满载温度
4055浏览 / 38回复
今天正在作图,顺便看了下温度,54度& 感叹很满足& 以前暑假热天时有55度,现在还是54度了
我的U是125热功耗,并没有我想象那么大,100多元的风扇超3.6压到55度左右,已经可以了& 晒晒夏天时的温度
现在是这样,没变化
我的1580没打漂了- -!&
居然没人占......
板凳!940发热量不高,我用的也是125W
再晒一下我的低电压3.0G烤机&&&&1个小时&& 45度
940发热量本来就不高,不超频的话一般也就是30-32度之间晃悠。
955现在只有 1280元
cpu100%占用
拷机在吗?
对&楼主&liyang350z&说:=========================兄弟,我也用940,以前用南海mini压,100多块钱的,加压上到3.75G,和你温度差不多,55度。不过我现在换了变形金刚散热,配火蝠,现在入秋了,待机20度左右,反正就是和室温持平的样子。
感觉940这U功耗吓人,但是温度还可以了。
我的I7 920原装风扇,一般40多一点点,超频到3.2G在8线程满的话在60多。
对&第3楼&liyang350z&说:=========================我用的是Q7100,也是挂SP2004,怎么挂4个还是不到100%CPU占用率,郁闷死了
有什么办法能100%麻?还有MAX软件怎么用?
呵呵,940功耗比较吓人,就这些不足了,还好940支持超频同时开凉又静 省电了不少MAX VRYA是我的专业课程,几乎比拷机还吓人
对&第6楼&meatisfree&说:=========================我做的渲染器支持多核渲染,最高可支持16核
对&第9楼&hust1980&说:=========================OR2004开四个,9级 按我3楼的设置做,能到100%
对&楼主&liyang350z&说:=========================只可惜买了就过时。。。。
不能支持DDR3
对&第15楼&a&说:=========================每个产品注定要过时, 940 超3.6G够我用3年了,到时还得再买新平台,说不定DDR4内存~~
曾实测过,作图渲染DDR2与DDR3速度没区别。。
对&第8楼&sgsxkiki109&说:=========================忽悠
,54度&&感叹很满足&&以前暑假热天时有55度,现在还是54度了。。。。这句囧
温度不错,低温那个更不错。
满载没试过,我的I7 920在室温28度待机时,温度23度
支持键盘翻页 ( 左右 )&
您需要登录后才可以回帖&&&|&&&&&
用户名/注册邮箱/注册手机号
其他第三方号登录君,已阅读到文档的结尾了呢~~
2016届江苏省苏锡常镇四市高三5月教学情况调研(二)政治试题及答案政治,答案,江苏,政治试题,政治答案,2016届,试题答案,常镇四市
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
2016届江苏省苏锡常镇四市高三5月教学情况调研(二)政治试题及答案
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口}

我要回帖

更多关于 amd羿龙iix4 940cpu 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信