Android:AsyncTask 如何使用等待/通知

标签 android multithreading android-asynctask

是否可以在 AsyncTask 中调用等待和通知?到目前为止,我尝试使用它们,但它所做的一切都会永远阻止 AsyncTask。我怎样才能克服这个?我的用法是:我生成了一个相机帧,我想将它连续发送到服务器,但是,我想做一些比

while( true){
 if (frameAvaialble){
    send(frame)
  }
}

这会消耗无用的 CPU 能力。

最佳答案

你可以尝试ConditionVariable, http://developer.android.com/reference/android/os/ConditionVariable.html

private ConditionVariable mCondition = new ConditionVariable(false);


while( true ){
   mCondition.block();
   send(frame)
}

//other code
frameAvaialble = true;
mCondition.open();

关于Android:AsyncTask 如何使用等待/通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16350002/

相关文章:

Android Catch Notes 应用程序,如圆形菜单

java主线程管理启动其他线程

c - Freertos + STM32F2 - 将堆栈分配给线程后总堆大小错误

java - 异步任务上的多个notifyObservers()不起作用

java - android asynctask处理程序如何正确创建它加上奇怪的无法销毁 Activity 异常

android - Android LocalBroadcast导致应用崩溃

Android:是否有 onSMSSend 事件?

c# - 有没有办法强制异步/等待在第一个可用线程上继续?

android - 在 Android 上使用异步任务的 Webview

java - 由于 'java.io.FileNotFoundException',检测运行失败