Не для кого не секрет, что странички и особо приложения построенные на Flash и пользующие активно 3D-Unity очень прожорливы! В Мазиле для РС под Вынь ХР х32 так сказать, стоит ограничение в использовании кэша в 1024 мегабайта, это невероятно мало! Пока выжирается до гибайта - всё нормально! Но вот когда переваливает за 1.5 и более гибайта начинаются чудеса в решете! Краш Flash Player один из них... Белый экран на всех окнах сколько бы их не было, и всё было бы терпимо, если бы не терялось положение на странице, и если бы некоторые особо умные игроделы исправляли многочисленные баги, из-за которых приходится в лучшем случае перегружать браузер, в худшем случае перегружать компьютер, но есть варианты когда и это действие безрезультативно... Пример: приложение Demon Slayer от 101XP, причём другое приложение от этой группы разработчиков такими лагами и багами не страдает! Как это происходит .. вся эта проблема с Flash Player или нет?! Загрузка кэша более гибайта .. неважно где в ВК или на Ютике .. грузишь ли ты звук или видео .. происходит следующее, как я понимаю проблему... ..происходит загрузка контента .. она последовательна .. неожиданно вмешивается другая подгрузка .. конфликт .. два контента не могут загрузится одновременно в оперативную память или через неё на винт по причине их большого веса .. мелкота быстро сгружается и конфликтов при этом не возникает .. когда кэш браузера не переполнен .. проблем нет .. когда начинается свапинг файлов, пакетов, контента, и т.д. на винт .. браузер начинает сбоить .. ведь скорость загрузки существенно падает .. тормоза при воспроизведении flash контента - остановы - рывки - проскоки анимации, видео, звука .. это можно стерпеть поскольку разглючивает после прогрузки на винт (память-кэш забита) .. но всему есть предел .. особо когда грузится звук .. наиболее частые полные остановы flash player с белым экраном на всех страницах .. бывает что выдаёт сообщение об краше и просит перегрузить страницу (очень редко) .. также если есть хоть малейший сбой при скачивании контента с сервера, опять также завешивает все окна .. перезапуск окон не всегда спасает .. приходится иногда перезапускать браузер .. с приложением вообще хохма та ещё: загрузка контента - в барах отмеряются проценты - бумс - на последних процентах остановка анимации - но тут более менее понятно, где ошибка всплыла .. загрузка стартовой локации - бумс - остановка анимации - анимация грузится очень странно - не последовательно - а вся сразу - причём одна налезая на другую .. как будто бы произошёл сбой БД на сервере .. кэш должен выгружаться перед загрузкой приложения или заменяться, если он идентичен, но повреждён или вторично использоваться, если целостен и грузится из одного и того же источника .. получается скорее всего следующее .. сервер получил подтверждение об принятии файла .. но файл ещё не загрузился из-за забитой памяти и тормозов винта туда где ему место в кэш .. сервер толкает следующий кусок .. процесс начинает стопорится .. один кусок налетает на другой .. процессы становятся в очередь .. но ядро приложения обрабатывающего весь принимаемый контент на это не расчитано .. оно работает по инструкции внутренней или внешней .. если во внешней нет описания решения данной проблемы, её пытается решить внутренняя (встроенная) в ядро приложения часть .. вот тут то и происходит обвал процесса и краш приложения .. в данном случае flash player .. тупингов очень много .. и к сожалению не все решаемы со стороны пользователя!.. 1. разрешить браузеру Мазила Файерфокс использовать всю имеющуюся оперативную память, опираясь на операционную систему .. поскольку к примеру Вынь ХР использует только 3.46 гибайта оперативной памяти, а Седьмая спокойно работает с 16-ю гибайтами оперативной памяти! ..это очень важно .. поскольку .. страницы станут со временем более громоздкими, приложения тоже, видео и аудио контент также будет расти в объёме в геометрической прогрессии .. тем более, что появилось видео 4к и более, а оно даже при хорошем сжатии весит немало .. а кэш 1 гибайт.. 2. произвести переговоры с Adobe по скорейшей модернизации их Flash Player и Shock Wave Player с целью оптимизировать работу не одного, а нескольких приложений запущенных в браузере одновременно, поскольку многие используют более двух трёх страниц-приложений одновременно! ..на страницах очень большое количество flash контента (содержимого), которое без должной синхронизации и управления, начинает конфликтовать друг с другом, что и вызывает так называемые падения активных ядер приложений, того же plugin-container, и самого браузера в целом.. 3. если возможно и удастся изменить ядра браузера и плейера, то желательно будет их приучить к индексным много-вложенным контейнерам, которые сами по сути своей база данных .. текущие базы данных слишком огромны, чтобы нормально функционировать при постоянном приросте объектов! ..ядро (определитель ресурсов) - его цель определить что можно использовать в системе, и ограничить работу приложения в соответствии с полученными данными .. ядро (определитель контейнеров) - его задача разлаживать содержимое контейнеров по устройствам обработки (звук-видео-анимация-текст-прочее) .. ядро (синхронизатор) - его задача опираясь на временные метки заставлять работать те или иные группы контейнеров .. ядро (отладчик) - его задача при сбое контейнера, производить гарячую замену на рабочий и отсылать повреждённый с пометками сбоя .. ядро (записи-очистки) - его задача без сбоев сохранять исполняемые контейнеры-ядра в память и если требуется на винт .. ядро (активного и пассивного кэша) - его задача вылаживать на отведенном на винте под сохранение месте копию приложения с целью снять нагрузку с серверов приложений и с каналов интернета, которые зачастую перегружены, если пользователь не хочет или более не хочет отдавать место на винте под приложение, то двумя кликами - этот кэш должен быть удалён, сервер должен иметь право заменять файлы (контейнеры) в кэш-песочнице - естественно лежащий на винте кэш пассивный, а располагаемый в оперативной памяти кэш активный .. ядро (звук) .. ядро (видео) .. ядро (анимация) .. ядро (текст) .. ядро (другое).. ..каждый контейнер содержит метку, она считывается ядром, и в зависимости от действий пользователя либо заменяется другим контейнером либо модифицируется, либо используется без изменений .. стартовая запись приложения (типа exe) не должна быть громоздкой и содержать ядра, это всего лишь кнопка с которой начинается по инструкции (алгоритму) загрузка активных и пассивных ядер приложения, и подгрузка необходимых контейнеров с графикой, звуком, текстом и другими наполнителями (обрастателями скелета приложения) .. гарячая (именно так замена элементов обязательна.. ..исполняемые процессы не должны быть очень громоздкими и длинными по коду .. лучше пусть всё будет коротким и лёгким .. на то они и созданы контейнеры, из которых можно лепить любое приложение, любой сложности, любого какого угодно веса (да хоть в пентабайтах) лишь бы вытянула машина, на которой это приложение будет исполняться .. и предусмотреть работу приложений на очень слабом железе .. работа для всех.. Очень надеюсь, что в скорем времени программирование шагнёт далеко вперёд, и не придётся переписывать тонны кода в поисках ошибок! То что предложил по контейнерам не ново, просто реализовать в 80-х да и в 90-х - это было практически нереально .. сейчас пытаются встраивать в устройства подобные универсальные контейнеры .. подключил одно устройство к другому, и они друг друга понимают .. драйвера внутри! |