【面试题】JAVA 一个线程依赖另外一个线程的结果
2015-05-15 10:00
218 查看
public class Main {public static class MyCallable implements Callable<Integer>{
public Integer call() throws Exception {return 1;
}}
public static void main(String[] args) {
MyCallable callable=new MyCallable();
FutureTask<Integer> task=new FutureTask<Integer>(callable);
Thread t=new Thread(task);
try {
t.start();
System.out.println(task.get());
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ExecutionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}}
操作系统分配线程执行权是随机的。那么有没有可能出现先执行了`System.out.println(task.get());`的情况。主线程依赖这个工作线程的值。那么会不会出现先执行了主线程呢?
public Integer call() throws Exception {return 1;
}}
public static void main(String[] args) {
MyCallable callable=new MyCallable();
FutureTask<Integer> task=new FutureTask<Integer>(callable);
Thread t=new Thread(task);
try {
t.start();
System.out.println(task.get());
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ExecutionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}}
操作系统分配线程执行权是随机的。那么有没有可能出现先执行了`System.out.println(task.get());`的情况。主线程依赖这个工作线程的值。那么会不会出现先执行了主线程呢?
答案地址
相关文章推荐
- 【面试题】JAVA 一个线程依赖另外一个线程的结果
- 【面试题】JAVA 一个线程依赖另外一个线程的结果
- java中多线程一个线程负责客户端读数据到队列另外一个线程负责从队列输出数据
- 一道java线程面试题--设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 【Java面试题】23 java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用?
- java面试题:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- java面试题解惑:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?
- JAVA中申请了两个对象,分别在调用方法和声明方法中把其中一个对象直接赋值给另外一个对象,运行结果,求原理。
- 【Java面试题】26 多线程有几种实现方法?同步有几种实现方法? 当一个线程进入一个对象的一个synchronized方法后,其它线程是否可进入此对象的其它方法?
- 一个关于java线程的面试题
- java中一个子线程如何通过interrupt手段来停止另外一个子线程
- 用JAVA写一个多线程程序,写四个线程,其中二个对一个变量加1,另外二个对一个变量减1
- Eclipse 想运行一个java文件,结果却运行了另外一个
- java面试题--4个线程两个线程每次对j增加1另外两个线程对j每次减少1
- 【Java面试题】29 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1。写出程序。
- 多个表联合查询的一些问题解决,用一个表里面的查询结果来排除另外一个表的查询结果
- 另外,Volley中所有的请求都在一个额外线程中执行,而不会阻塞你的“主线程”。
- 请给一个java线程同步的例子
- 一个线程往缓冲区buffer写数据,另外三个读数据,读和写要分开
- Java基础学习总结(68)——有关Java线程方面的面试题