如何在java中从可运行线程接收值

如何在java中从可运行线程接收值,java,android,multithreading,class,methods,Java,Android,Multithreading,Class,Methods,当我想使用其他类接收结果时,我遇到了一个问题 假设我的类“NewImage”中有两个方法:fct_1()和fct_2() fct_2()在新线程中启动,而fct_1()不启动 在我新的另一节课中,我想展示结果: 这个很好用: Bitmap received=null; final NewImage NewImage_1 = new NewImage (); received = NewImage_1.fct_1(); 但事实并非如此 Bitmap received=null; final Ne

当我想使用其他类接收结果时,我遇到了一个问题

假设我的类“NewImage”中有两个方法:fct_1()和fct_2()

fct_2()在新线程中启动,而fct_1()不启动

在我新的另一节课中,我想展示结果:

这个很好用:

Bitmap received=null;
final NewImage NewImage_1 = new NewImage ();
received = NewImage_1.fct_1();
但事实并非如此

Bitmap received=null;
final NewImage NewImage_1 = new NewImage ();
received = NewImage_1.fct_2();
我的方法是:

public static Bitmap fct_1()
{
code 1
}

public static Bitmap fct_2()
{
new Thread(new Runnable() {public void run(){
code 2
}});
}

有什么方法可以解决这个问题吗?

您能更详细地描述一下调用第二个方法时遇到的问题吗?到底什么“不起作用”?该方法是否引发错误/异常?它是否永远不会完成并导致整个JVM因内存不足而崩溃?请提供更多详细信息,问题是什么?唯一的区别是:我在一个新线程中使用fct_2。