Size: a a a

StartAndroid Ru Chat

2020 June 17

АМ

Александр Михно... in StartAndroid Ru Chat
Denis Koval
спасибо!
Эмм, типа не за что
источник

DK

Denis Koval in StartAndroid Ru Chat
есть за что)
источник

АМ

Александр Михно... in StartAndroid Ru Chat
Если ты тему реализовал через DayNightЧто-тоТам то да, тот вариант с картинкой должен работать
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
Подскажите пожалуйста.
Есть класс в нем метод который создает поток который считает время
Я вызываю его в другом класс.
И мне в какой-то момент нужно удалить старый поток и вызнать новый
У меня не получается удалить старый.
Я так понимаю мне нужно хранить на него где-то ссылку, а то при обратном вызове метода создается новый поток?
источник

AD

Andrei Danilenko in StartAndroid Ru Chat
да, у вас в потоке вайл тру, явно надо убивать или будет утечка ресурсов пока не забьете все цпу
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
Andrei Danilenko
да, у вас в потоке вайл тру, явно надо убивать или будет утечка ресурсов пока не забьете все цпу
вайл тру, потому что время до отмены не ограничено, пока пользователь сам не отменит
А Вы не подскажите как правильно хранить ссылку на поток t ?
источник

AD

Andrei Danilenko in StartAndroid Ru Chat
Иван Овсиенко
вайл тру, потому что время до отмены не ограничено, пока пользователь сам не отменит
А Вы не подскажите как правильно хранить ссылку на поток t ?
сделайте не анонимным классом а вынесете в отдельный
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
Andrei Danilenko
сделайте не анонимным классом а вынесете в отдельный
А чтобы завершить поток мне нужно использовать t.interrupt(); Он сразу его убивает? или если внутри потока есть незавершенный цыкл он будеш ждать эго завершения?
(Извиняюсь, я пока только учусь)
источник

AD

Andrei Danilenko in StartAndroid Ru Chat
вообще убивает сразу, но по спекам насколько я помню жава не гарантирует что его убьет сразу, и вообще не гарантирует что убьет, но по факту это почти нереальный кейс что бы не остановило
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
Andrei Danilenko
вообще убивает сразу, но по спекам насколько я помню жава не гарантирует что его убьет сразу, и вообще не гарантирует что убьет, но по факту это почти нереальный кейс что бы не остановило
Большое спасибо, буду пробовать!
источник

A

Artem [Android] in StartAndroid Ru Chat
Иван Овсиенко
Большое спасибо, буду пробовать!
Вайл нот интерраптед ещё можно попробовать :)
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
Artem [Android]
Вайл нот интерраптед ещё можно попробовать :)
Вынес поток в отдельную переменную.
Перед каждым вызовом метода делаю interrupt() этого потока, потом вызываю метод снова.
Первый раз срабатывает хорошо, а после второго постоянно весят 2 потока. Хотя смотрел по логам. Там всегда Создался-удалился поток, создался, удалился... нет лишних...
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
После interrupt() выкидывает екзепшн, но счетчик внутри цыкла продолжает ити
источник

SP

Sergey Panov in StartAndroid Ru Chat
Иван Овсиенко
Вынес поток в отдельную переменную.
Перед каждым вызовом метода делаю interrupt() этого потока, потом вызываю метод снова.
Первый раз срабатывает хорошо, а после второго постоянно весят 2 потока. Хотя смотрел по логам. Там всегда Создался-удалился поток, создался, удалился... нет лишних...
Зачем делаешь переменные статичными?
источник

A

Artem [Android] in StartAndroid Ru Chat
Иван Овсиенко
Вынес поток в отдельную переменную.
Перед каждым вызовом метода делаю interrupt() этого потока, потом вызываю метод снова.
Первый раз срабатывает хорошо, а после второго постоянно весят 2 потока. Хотя смотрел по логам. Там всегда Создался-удалился поток, создался, удалился... нет лишних...
Поподробнее про "каждый вызов метода" плиз. Нужно понимать что каждый следующий вызов метода создаст новый поток и запишет в переменную т, а интеррапт заинтерраптит только последний
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
Sergey Panov
Зачем делаешь переменные статичными?
Я в другом классе использую ее. Я пока не очень в этом разбираюсь, поэтому буду раз напутствию как правильно делать
источник

A

Artem [Android] in StartAndroid Ru Chat
Иван Овсиенко
Я в другом классе использую ее. Я пока не очень в этом разбираюсь, поэтому буду раз напутствию как правильно делать
Если нужно использовать ссылку на поток в другом классе, то пусть лучше метод таймер возвращает эту ссылку
источник

SP

Sergey Panov in StartAndroid Ru Chat
Иван Овсиенко
Я в другом классе использую ее. Я пока не очень в этом разбираюсь, поэтому буду раз напутствию как правильно делать
Сделай не статичными, и напиши методы для старта и отмены потока конкретно в этом экземпляре класса.
источник

ИО

Иван Овсиенко... in StartAndroid Ru Chat
Artem [Android]
Поподробнее про "каждый вызов метода" плиз. Нужно понимать что каждый следующий вызов метода создаст новый поток и запишет в переменную т, а интеррапт заинтерраптит только последний
1. Вызываю метод, в нем создается поток
2. В нужный момент делаю интерапт ссылки на этот поток
3. Обратно вызываю метод с созданием потока
Как-то так по идеи должно работать
источник

ES

Egor Sigolaev in StartAndroid Ru Chat
Иван Овсиенко
1. Вызываю метод, в нем создается поток
2. В нужный момент делаю интерапт ссылки на этот поток
3. Обратно вызываю метод с созданием потока
Как-то так по идеи должно работать
Если что, то интерапт не вызывается 100 процентно. Это как метод он дестрой.
источник