Bem, é algo que uso em Java me, mas como a dúvida é sobre Thread resolvi postar aqui.
Pra quem não sabe, em Java me quando se acessa partes do dispositivo, como Camera, sistema arquivos e outros é necessário a utilização de Thread.
Eu posso, fazer algo do tipo:
Thread t = new Thread() {
public void run() {
if (!isSaving()) {
image = recuperarArquivoImpl(sNomeArquivo);
ImageItem imageItem = new ImageItem(
"Imagem Carregada", image,
ImageItem.LAYOUT_CENTER, "Ih deu erro");
oForm.append(imageItem);
}
}
};
t.start();
Só que eu quero pegar o retorno do método em outro lugar, só que o que eu to fazendo abaixo não funciona e ele me traz o retorno nulo, porque não espera a Thread terminar de executar.
public synchronized Image recuperarArquivo(final String sNomeArquivo) {
Thread t = new Thread() {
public void run() {
if (!isSaving()) {
image = recuperarArquivoImpl(sNomeArquivo);
}
}
};
t.start();
return image;
}
Como que eu faço?
