Мне нужна помощь. Я должен постоянно проверять byte[]
, полученный через bluetooth. Для этого я реализую Runnable, проблема в том, что он не возвращает byte[]
.Запуск альтернативы для возврата значения
Для этого я попытался реализовать Callable вместо Runnable, потому что это позволяет мне вернуть значение. Но с Callable я не могу проверить каждые 0,5сек переменную.
Итак, какой будет лучший способ обновить переменную и уметь получить ее, когда мне это нужно?
Это Runnable
, что я сделал:
private final Handler refresh_handler = new Handler();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Runnable refresh_input = new Runnable() {
@Override
public void run() {
bt_read_input = GlobalVar.bt_input; //Save received value in a local variable
refresh_handler.postDelayed(refresh_input, 500);
}
};
refresh_handler.post(refresh_input); //Call to the function
Звучит как типичная проблема производителя-потребителя. – rocketboy
Что именно вы хотите сделать? – pskink
Мне нужно сделать функцию, которая постоянно проверяет значение переменной и возвращает мне это значение – masmic