Size: a a a

StartAndroid Ru Chat

2020 September 15

AP

Andrey Pomazkin in StartAndroid Ru Chat
D. P.
а зачем?
то что ты делаешь это плохо. это сложно поддерживать, сложно читать, сложно предугадать баги
источник

DP

D. P. in StartAndroid Ru Chat
И кстати, вот эти все ихние рецепты из переполнения стека...

android.os.Messenger cannot be cast to android.os.Handler
источник

СМ

Слава Мукорез... in StartAndroid Ru Chat
Vladushka
или заменить mvp на mvvm в связке с лайв датой, на которую ты будешь подписан и которая будет уведомляться о появлении данных
или использовать рх джаву
или использовать корутины
Понял, спасибо
источник

V

Vladushka in StartAndroid Ru Chat
D. P.
В общем я уже наконец все выяснил.
Метод.класса вызывается в вызывающем потоке, а не в потоке A1.run.
Чтобы подергать методы MainActivity и вывести пользователю что-то из другого потока достаточно передать в другой поток (А1) ссыль на MainActivity.
не надо передавать ссылки на активити
кажется, ты что-то очень странное делаешь
источник

DP

D. P. in StartAndroid Ru Chat
Andrey Pomazkin
то что ты делаешь это плохо. это сложно поддерживать, сложно читать, сложно предугадать баги
плохо - оценочное суждение.
сложно читать -- не знаю, там намного меньше кода и задействованных библиотек, чем в случае подписок и Messenger

сложно предугадать баги -- я не знаю, как тестировать в яве многопотоковость, тем более в андроиде, пока оно работает на коленке. Если есть конкретные баги, которые могут вылезти -- подскажи, какие, какого плана они могут быть?
источник

AP

Andrey Pomazkin in StartAndroid Ru Chat
D. P.
плохо - оценочное суждение.
сложно читать -- не знаю, там намного меньше кода и задействованных библиотек, чем в случае подписок и Messenger

сложно предугадать баги -- я не знаю, как тестировать в яве многопотоковость, тем более в андроиде, пока оно работает на коленке. Если есть конкретные баги, которые могут вылезти -- подскажи, какие, какого плана они могут быть?
все что связано с race condition, например
источник

AP

Andrey Pomazkin in StartAndroid Ru Chat
D. P.
плохо - оценочное суждение.
сложно читать -- не знаю, там намного меньше кода и задействованных библиотек, чем в случае подписок и Messenger

сложно предугадать баги -- я не знаю, как тестировать в яве многопотоковость, тем более в андроиде, пока оно работает на коленке. Если есть конкретные баги, которые могут вылезти -- подскажи, какие, какого плана они могут быть?
если ты пилишь для себя - делай.
если это будут другие пилить после тебя - не делай, иначе икаться тебе будет.
давно уже никто почти не использует многопоточные примитивы, потому что сложность кода увеличивается геометрически при увеличении сложности задачи.
rx или корутины лучше освой. Для твоей задачи хватит поверхностных знаний в них
источник

DP

D. P. in StartAndroid Ru Chat
окъ
источник

DP

D. P. in StartAndroid Ru Chat
спасибо, посмотрю на них.
источник

DP

D. P. in StartAndroid Ru Chat
источник

DP

D. P. in StartAndroid Ru Chat
На всякий случай, для предметного показа.
Убрал всё лишнее не относящееся к вопросу.
источник

V

Vladushka in StartAndroid Ru Chat
выгляди как код из какого-нибудь 2012😅
источник

DP

D. P. in StartAndroid Ru Chat
эмм, первый язык программирования у меня был фортран на смке, так что нормалёк.
источник

DP

D. P. in StartAndroid Ru Chat
а, не, вру. бейсик на z80 с кассеты, да. Фортран был потом.
источник

DP

D. P. in StartAndroid Ru Chat
У меня больше вопрос -- race condition может ли возникнуть при таком использовании?
Т.е. ровно один поток consumer, один поток publisher, но каждый может дёрнуть в произвольный момент времени owner.chatlink.append.
Я не понимаю, лочится там что-то или нет при этом.
источник

DP

D. P. in StartAndroid Ru Chat
Хотя, если это вывод, то где-то глубоко под капотом...
источник

AP

Andrey Pomazkin in StartAndroid Ru Chat
проверь варианты, когда во время запроса ты сворачиваешь приложение, например. или в ходе запроса - переворачиваешь экран
источник

DP

D. P. in StartAndroid Ru Chat
угу, понел.
источник

AP

Andrey Pomazkin in StartAndroid Ru Chat
учитывая, что ссылка на активити у тебя где-то в потоке, то при уничтожении активити - будут странные вещи
источник

DP

D. P. in StartAndroid Ru Chat
Поскольку потоки не выделены в отдельные сервисы, разве они не будут ли тоже уничтожены?
источник