使用线程

Zak*_*man 0 java multithreading android callable

我有以下任务:

  1. 从网上下载图片
  2. 使用它创建另一个图像
  3. 将图像保存到SD卡并显示

我需要在另一个线程中执行每一步.看来,当我完成加载图像时,我需要将其转移到第二个线程中.

经过一些谷歌搜索后,我意识到我需要为每个线程实现Callable接口,而不是将它与ExecutorService一起使用.问题是我不明白如何传递数据,例如,从第一个线程传递到第二个线程.

任何人都可以展示一个简单的例子吗?谢谢

npe*_*npe 5

使用BlockingQueueProducer-Consumer模式.

在这种方法中,第一个线程将下载您的图像并将它们放入队列中.第二个线程将等待,直到队列中出现某些内容,转换图像,并将其放入另一个队列,第三个线程将等待.

阅读我链接的文章,以获得更多解释和Producer-Consumer模式的工作示例.