В J2ME, как приостановить и возобновить поток
В моем приложении j2me у меня есть массив данных двойного типа, содержащий значение 5 координат. Этот массив находится внутри потока, чтобы постоянно проверять, задаются ли одни и те же значения GPS.
Как только он получит правильное совпадение, я хочу приостановить поток, затем удалить найденное совпадение из потока и возобновить поток. Я хочу, чтобы это происходило, пока массив не содержит значения координат. Как только массив освободится, я хочу приостановить поток, пока он не получит новое значение. Еще раз, когда массив получает значения, он должен начать снова.
Как я должен реализовать эту логику в коде?
1 ответ
Если бы это был я, я бы не стал ставить Нить в паузу. Я бы просто включил его все время.
while (true) {
for (coordinate in arrayOfCoordinates) {
if (checkLocation(coordinate)) removeFromArray(coordinate);
}
try { Thread.sleep(5000); } catch (Exception e) {}
}
Я не вижу никакой причины ставить нить в паузу, когда вы делаете такую маленькую проверку, которую вы описываете.