相关疑难解决方法(0)

在为android编程时出现MultiThreading问题

我正在Android上开发,但问题可能在任何其他Java平台上都同样有效.

我开发了一个多线程应用程序.假设我有一个需要执行时间密集型任务的第一类,因此这项工作在另一个Thread中完成.完成后,相同的Thread会将时间密集型任务结果返回给另一个(第3个)类.

最后一个类将执行某些操作并将其结果返回到第一个启动类.我注意到虽然第一堂课将一直等待,也许是因为这是某种循环?

另外我想让Thread-class停止运行,就像它将结果传递给第三类时它应该停止一样.第三类必须在没有被"封装"在第二类(线程一)的情况下完成它的工作.谁知道怎么做到这一点?

现在的经验是,第一个似乎在等待(悬挂)直到第二个和第三个完成:(

multithreading android

1
推荐指数
1
解决办法
7076
查看次数

java启动一个后台线程接连完成

我看到了这个问题:如何在完成另一个线程后运行一个线程 ,但是它的答案对我来说不合适.

我有这样的Android代码:

public void startTask(Runnable r)
    {
        running = true;
        Log.i(tag, "-----------start.Runnable-----------");

        Thread first = new Thread(r);
        first.start();

        Thread second = new Thread(new Runnable() {

            @Override
            public void run() {
                // TODO Auto-generated method stub
                running = false;
            }
        });
}
Run Code Online (Sandbox Code Playgroud)

首先Thread将Runnable一些硬操作作为param 对象,我在后台服务中处理.所以,当我调用method:startTask()时我设置running = true; 防止双重执行任务.但是,我也需要在完成第一个线程后第二个线程设置running = false; 使其他操作能够执行.

如何等待第一个线程的完整性,不要冻结主线程?谢谢!

java multithreading android android-service

1
推荐指数
2
解决办法
5645
查看次数

标签 统计

android ×2

multithreading ×2

android-service ×1

java ×1