Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Midlet中使用线程:如何监听正在运行的线程?_Java_Multithreading_Java Me - Fatal编程技术网

Java 在Midlet中使用线程:如何监听正在运行的线程?

Java 在Midlet中使用线程:如何监听正在运行的线程?,java,multithreading,java-me,Java,Multithreading,Java Me,在我的类中,构造函数中有一个内联线程,用于从远程站点加载对象: Thread readSite = new Thread(new Runnable() { public void run() { site.loadStuff(); } }); readSite.start(); 我想显示一条“正在加载”消息,直到线程完成。因此,在上面的代码之前,我将显示一条加载消息 在上面的代码之后,我显示了我想继续的屏幕 代码如下所示: showLoading

在我的类中,构造函数中有一个内联线程,用于从远程站点加载对象:

Thread readSite = new Thread(new Runnable() { public void run() { site.loadStuff(); } }); readSite.start(); 我想显示一条“正在加载”消息,直到线程完成。因此,在上面的代码之前,我将显示一条加载消息

在上面的代码之后,我显示了我想继续的屏幕

代码如下所示:

showLoadingView(); //tells the user it is waiting Thread readSite = new Thread(new Runnable() { public void run() { site.loadStuff(); } }); readSite.start(); showStuffView(); //works with the data retrieved from the site instance 现在,主线程当然继续,showStuffView将直接执行

我现在可以让主线程等待readSite线程,但是用户无法接受显示给用户的连接请求“使用airtime可以吗?”我想这是因为负责的线程处于休眠状态

另一方面,我无法从readSite线程执行showStuffView


我希望你们能解释一下如何等待这个线程。我研究了synchronized,但没有找到一个好的解决方案

我认为这是线程的常见问题,您可以使用布尔变量来解决这个特殊问题。但就一般而言,我认为这是好的