招商合作笔试题及答案java(招商合作职位笔试题及答案)
scjp题型!!急
尝试回应一下:
这道题关键考线程和同歩方法的知识要点。
因为add()和print()2个方法被添加了关键词synchronized,简单点了解也就是说:当在其中一个线程在访问add()方法的情况下,另一个线程务必等候到前一个线程撤出add()的访问后才可以访问add()方法,print()方法同样。
这儿循环系统2次,第一次循环运行线程1,线程1在加上A,B,C的值以后,逐渐访问print(),也就是撤出了add()方法,别的线程可以访问add(),那麼在线程1访问完print()的情况下,线程2即运行,因为线程存有可变性,E的选择是大部分发生的状况,但有时也会发生G选择项,是由于,就算线程1访问完print(),不意味着print()会在线程2运行以前就实行结束了。这儿假定print()按序打印出容器里由线程1存入容器的ABC全过程中,线程2获得过一次机会上CPU一次,那麼线程2就很有可能存入新的ABC进到容器,很有可能线程2就正好存入了A,还未存入BC的过程中就被时间线交替下CPU,而此时线程1的print()或许恰好实行到打印出C,可是此时事实上容器里的因素已经变成了ABCA,因此线程1就很有可能实行print()方法搞出ABCA,以后,就到线程2正常的打印出ABCABC,因此拥有回答是ABCAABCABC的G选择项。而依照里面的逻辑推理,或许还将会发生ABCABABCABC的状况,但是那样的概率已经十分小了。。。
不清楚我的说明你是不是可以看搞清楚!
QQ5556849,搞不懂可以跟我说,仅限于此题,感谢您好。
很好运见到你的问题。
可是又十分缺憾到现在还没人回应你的问题。也很有可能现在已经在其他地区找到回答,那么就得祝贺你了啦。
针对你的问题我自顾不暇!
很有可能就是你问的问题有一些技术专业了。或是其他人并没有碰到或是了解过你的问题,因此帮不上你。提议你来问题的有关社区论坛去寻求帮助,那边的人通常比较多,也较为热情,很有可能能快点儿帮你解决困难。
期待我的回应也可以帮助到你!
过年了,
最终祝你全家幸福身心健康快乐每一天!synchronized add()
synchronized print()
2个全是同时的方法,
换句话说print()是一气呵成的,三个add是依照次序加上ABC的,线程是不确定性的,可是ABC的线形次序是不会改变的.add并不是一气呵成的.
因此C的数量2010-04-30抢首赞
scjp题型!!急
尝试回应一下:
这道题关键考线程和同歩方法的知识要点。
因为add()和print()2个方法被添加了关键词synchronized,简单点了解也就是说:当在其中一个线程在访问add()方法的情况下,另一个线程务必等候到前一个线程撤出add()的访问后才可以访问add()方法,print()方法同样。
这儿循环系统2次,第一次循环运行线程1,线程1在加上A,B,C的值以后,逐渐访问print(),也就是撤出了add()方法,别的线程可以访问add(),那麼在线程1访问完print()的情况下,线程2即运行,因为线程存有可变性,E的选择是大部分发生的状况,但有时也会发生G选择项,是由于,就算线程1访问完print(),不意味着print()会在线程2运行以前就实行结束了。这儿假定print()按序打印出容器里由线程1存入容器的ABC全过程中,线程2获得过一次机会上CPU一次,那麼线程2就很有可能存入新的ABC进到容器,很有可能线程2就正好存入了A,还未存入BC的过程中就被时间线交替下CPU,而此时线程1的print()或许恰好实行到打印出C,可是此时事实上容器里的因素已经变成了ABCA,因此线程1就很有可能实行print()方法搞出ABCA,以后,就到线程2正常的打印出ABCABC,因此拥有回答是ABCAABCABC的G选择项。而依照里面的逻辑推理,或许还将会发生ABCABABCABC的状况,但是那样的概率已经十分小了。。。
不清楚我的说明你是不是可以看搞清楚!
QQ5556849,搞不懂可以跟我说,仅限于此题,感谢您好。
很好运见到你的问题。
可是又十分缺憾到现在还没人回应你的问题。也很有可能现在已经在其他地区找到回答,那么就得祝贺你了啦。
针对你的问题我自顾不暇!
很有可能就是你问的问题有一些技术专业了。或是其他人并没有碰到或是了解过你的问题,因此帮不上你。提议你来问题的有关社区论坛去寻求帮助,那边的人通常比较多,也较为热情,很有可能能快点儿帮你解决困难。