Я работал над этим и с оговоркой, что я, возможно, даже не знаю так много, как вы до сих пор, я продолжаю видеть используемый тип WeakRef
, но опять же я не вижу людей, проверяющих на нулевые значения, так что из того, что яможет собраться на нем, если пользователь переворачивает телефон вокруг системы, может, если он напрягается, просто выкинуть процесс ~, то, что я вижу, насколько я узнал, так это то, что, как мы уже знаем, System.gc изначально не совсем концептуален.работать на переносных устройствах, таким образом, указатели хранятся в какой-то системной таблице для перевода между исходным кодом и тем, что на самом деле происходит в аппаратном обеспечении ^, может ^ привести к тому, что указатели будут заново добавлены при повторном вводе, таким образом, когда это происходит, это не так.как тщательное кодирование и тестирование, чтобы не хранить ссылки в структуре данных, которая не "прогуливается по куче" один раз в течение некоторого времени.
Конечно, избегайте статики, если нет причины, и всего несколько дней назад яв конечном итоге написал что-то как new Object(){ public methodNamedInAnInterface(){ /* stuff goes here */ }}
, но потом, после того, как я подумал об этом, это "лучшее усилие", и мы не можем программировать изМы пишем о проблемах, которые должны быть решены в магазине кода поставщика, где доступ к тому, как он работает, должен быть нормальным и ожидаемым ограничением
Я использую статику в своем собственном коде, но затем я работаю в изолированном локальном прототипировании[другими словами, я могу снова начать сбрасывать ошибочные указатели]
Я перехожу к ментальной модели программирования, где этот код выполняется на портативном устройстве, а не 10000 запрашивает второе ограничение