Как дождаться завершения задачи, точно так же, как вызвать функцию и принять ее результат, пока она не будет выполнена?
Дорогие все,
Я работал над проектом android, проблема, с которой я столкнулся, заключается в том, что мне нужно дождаться AsyncTask/service/thread/runnable, чтобы закончить свою работу и принять ее результат, когда она будет выполнена, чтобы операция продолжалась синхронно, однако код после вызова asyncTask/service..продолжает выполняться, что мне не нужно ... я думаю, что действительно пропустил что-то основное..
Приведенный ниже код - это то, что я пробовал, и я не включил то, что делает asyncTask...в doInBackground он делает ussd-вызов и автоматически входит в цикл while, чтобы получить перехваченное сообщение...что существует USSD-перехватчик, который помещает сообщение в глобальное общее предпочтение..цикл while ищет это конкретное сообщение и автоматически прерывается после matches...so мое желание-получить это сообщение и перейти к следующему утверждению...
Если моя проблема достаточно ясна, пожалуйста, помогите мне.
Пожалуйста, не стесняйтесь, если моя проблема не ясна.
Спасибо
Что я уже пробовал:
BackgroundMessageFinder asyncTask =
(BackgroundMessageFinder) новый BackgroundMessageFinder(Global. context, this,
новый BackgroundMessageFinder.AsyncResponse() {
@Ручная коррекция
public void processFinish(вывод строки) {
// isAccountValid = Boolean. parseBoolean ((вывод));
}
}).выполнить(констант.Предпочтительнее.UssdSmsMsg, "999", "457", "", "1234");
// попробуй {
пробовать {
Строку "test" = asyncTask.получить(); // получаем какой-то результат
asyncTask. wait(10000);
} catch (InterruptedException e) {
е.печатные();
} catch (ExecutionException e) {
е.печатные();
}
// продолжить после получения требуемого сообщения
OriginalGriff
Не "ударяйте" свой вопрос: это грубо, высокомерно, ненужно и не поможет вам получить более быстрый ответ. Во что бы то ни стало добавьте информацию, но просто отредактируйте ее, чтобы вернуть в начало списка "без ответа", это просто говорит: "Я важнее всех остальных, так что разберитесь с моим вопросом и игнорируйте остальное".
Как и все остальные, и все остальные вопросы. Если бы все были такими бездумными и грубыми, вы никогда не получили бы ответа ни на что, потому что все, что мы могли бы увидеть, было бы 100 страниц идиотов, сталкивающих все реальные вопросы на страницу 100+
Все, что вы делаете, это раздражаете людей и заставляете их намеренно даже не смотреть на ваш вопрос, не говоря уже о том, чтобы ответить на него.
Yonathan1111
Дорогой Оригиналгрифф, я не знаю, почему вы так к этому отнеслись, по крайней мере, у вас может быть возможность допросить меня по такому делу.все, что мне было нужно, - это получить концепцию, даже не кусок кода..Я не призывал и не включал слова, которые не разрешены в правилах codeproject..Я старался быть вежливым, насколько это было возможно. can..it странно, что в последнее время я получаю такой отклик..У меня есть 7-летняя история работы с codeproject..и получить такой ответ-это грубо..Английский - мой второй язык...и я прошу прощения за свой плохой язык skill..as вы сказали, что у меня нет намерения ставить свой вопрос сверху, а скорее исправить выражения, которые я использовал...спасибо..
OriginalGriff
Мой комментарий касался вашего "натыкающегося" вопроса: редактирование его без каких-либо изменений для того, чтобы переместить его обратно в начало списка без ответа. Система ведет журналы изменений и сообщает нам, какие изменения были сделаны - или в вашем случае не были сделаны.
Yonathan1111
Окей..У меня нет такого опыта в течение последних 7 лет, и это то, что я пытаюсь вам сказать ... и если вы внимательно посмотрите журналы изменений на вашей стороне, вы можете найти changes..at по крайней мере, я попытался внести исправления в название..