powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Java [игнор отключен] [закрыт для гостей] / вадя. Встретил твой код на хабре.
25 сообщений из 109, страница 1 из 5
вадя. Встретил твой код на хабре.
    #39885833
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя. Вот кусок твоего кода встретил на хабре.
Консультируй.
Тут ошибка что не очишаются файлы блоб в локальном хранилище хрома.
Каждый вызов этой функции создаёт новый здоровый блоб на клиенте.
пример ссылки:
blob: http://localhost:8080/02a0f2dc-8835-41cb-a561-0796347ce613
chrome://blob-internals/

Как исправить?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
function getPic() {
		this.map[mm].getData(new zip.BlobWriter("image/jpeg"), function (fileBlob) {
				this.progress_load.value = mm + 1;
				this.current_files.innerHTML = (mm + 1) + '  из  ' + this.map.length + ' >>  ' + this.map[mm].filename;
				this.filename = this.map[mm].filename;
				
				window.pic = null;
				pic = new Image();
				pic.onload = function (p) {

						this.img.height = p.target.height;
						this.img.width = p.target.width;
						if (p.target.height > p.target.width) {
								this.img.scale = this.st_full_height / p.target.height;
								this.pics.full_height = this.st_full_height;
								this.pics.full_width = p.target.width * this.img.scale;
								this.pics.preview_height = this.st_preview_height;
								this.pics.preview_width = p.target.width * this.st_preview_height / p.target.height;
						}

						if (p.target.height < p.target.width) {
								this.img.scale = this.st_full_width / p.target.width;
								this.pics.full_width = this.st_full_width;
								this.pics.full_height = p.target.height * this.img.scale;
								this.pics.preview_width = this.st_preview_width;
								this.pics.preview_height = p.target.height * this.st_preview_width / p.target.width;
						}


						if (p.target.height === p.target.width) {
								this.img.scale = this.st_full_width / p.target.width;
								this.pics.full_height = this.st_full_height;
								this.pics.full_width = this.st_full_width;
								this.pics.preview_height = this.st_preview_height;
								this.pics.preview_width = this.st_preview_width;
						}


						var h = this.img.height * this.img.scale;
						var w = this.img.width * this.img.scale;
						this.new_img.height = this.current_img.height = h;
						this.new_img.width = this.current_img.width = w;
						this.new_img.top = this.current_img.top = 0;
						this.new_img.left = this.current_img.left = 0;
						this.new_img.x = this.current_img.x = this.pics.full_width / 2;
						this.new_img.y = this.current_img.y = this.pics.full_height / 2;
						this.img.rotate = 0;
						this.cropp.call(this);
				}.bind(this);
				pic.src = urlFactory.createObjectURL(fileBlob, {type: "image/jpeg"});
				mm++;
		}.bind(this), function (current, total) {
//                    console.log(current, total);
		}
		);
}
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39885910
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Код: sql
1.
window.pic = null;

вот это в js не работает что сборка мусора убрала блоб. Так как пишут что ссылка все равно осталась.
Вроде только в java работает.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886021
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Тут ошибка что не очишаются файлы блоб в локальном хранилище хрома.
на что влияет?
не замечал влияния на что либо...
window.pic = null;
и это не тут проявляется..
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886022
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
буду исследовать...
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886033
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
на что влияет?
даже если блоб 500 мегов отправлен на сервер, он остается в памяти пока живет window.
Память растет, потом переходит на своп и работает все медленнее.
Нужно каким то образом очищать после отправки так как на клиенте он уже не нужен.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886057
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
даже если блоб 500 мегов отправлен на сервер, он остается в памяти пока живет window.
Память растет, потом переходит на своп и работает все медленнее.
Нужно каким то образом очищать после отправки так как на клиенте он уже не нужен.
провел исследования:
очистил историю хрома
очистил всё временное с помощью ccleaner.
загрузил зип 1.5гиг 614 файлов
пока загружались - эти блобы отображались в DevTools во вкладке источники.
при переходе на другую страницу и обратно - упоминание об этих блобах теряются...

посмотрел историю - никаких упоминаний о подобном размере, ничего...
Ccleaner не показал какого-либо заметного увеличения использованного хромом места

так что твои опасения напрасны.
про своп - ну тут вопрос спорный - простое "удаление" - это дело сборщика мусора, но как и когда он запускается - это никому не известно.
в инете - много вопросов про удаления блобов, но все они не сказываются на их удалении из "локального хранилища" , по крайне из списка не удаляются.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886065
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,

даже во время обработки файлов память не шибко изменяется
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886069
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
пока загружались - эти блобы отображались в DevTools во вкладке источники.
то есть, 614 файлов загрузились и висят в памяти пока загружается 615 ый файл?
- зачем тогда асинхронность в загрузке?
- что делать на сотовых и планшетах где всего оперативы 1 гигабайт?
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886070
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
даже во время обработки файлов память не шибко изменяется

Введи
chrome://blob-internals/
А то термин "не шибко" как то не инженерно)
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886072
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
так что твои опасения напрасны.
ты так в своей техподдержке отвечаешь?
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886074
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
то есть, 614 файлов загрузились и висят в памяти пока загружается 615 ый файл?
ничего не висит - на картинке же видно как изменяется память.
даже сам зиповский файл не загружается полностью.
загружается только список зазипованных файлов с инфой их расположения и прочей информацией.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886076
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Код: sql
1.
2.
window.pic = null;
pic = new Image();

этот код НЕ РАБОЧИЙ
Глобальная переменная pic затирается и память не освобождается.
До уничтожения страницы.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886078
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
PetroNotC Sharp
то есть, 614 файлов загрузились и висят в памяти пока загружается 615 ый файл?
ничего не висит - на картинке же видно как изменяется память.
даже сам зиповский файл не загружается полностью.
загружается только список зазипованных файлов с инфой их расположения и прочей информацией.
ты тупой?
Набери в хроме
chrome://blob-internals/
Что видишь?
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886081
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
chrome://blob-internals/
Что видишь?
открыл - смотрел
ты можешь сам - найти строчки с местом хранения
там есть путь - открой в проводнике (не закрывая хром) увидишь список этих "блобов"
закрой хром и все они пропадут
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886082
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Глобальная переменная pic затирается и память не освобождается.
До уничтожения страницы.
освобождением памяти занимается сборщик мусора.
когда он запускается - не известно
возможно когда появится необходимость
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886083
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
закрой хром и все они пропадут
молодец программист - закрой exe. и память очистится))))
Итого повтор вопроса. 614 блобов там есть пока качаю и уже перекачал 615?
Да или нет?
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886086
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
освобождением памяти занимается сборщик мусора.
если у объекта нет рабочих ссылок, неуч.
Двойка.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886087
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пришлось самому искать.
Первая ссыль говорит что в js нужен оператор delete переменная.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886090
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
Первая ссыль говорит что в js нужен оператор delete переменная.
ты думаешь я не нашёл этого?
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886100
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
PetroNotC Sharp
Первая ссыль говорит что в js нужен оператор delete переменная.
ты думаешь я не нашёл этого?
дак вставь. У тебя упрямства выше крыши.
На планшете 1 гиг оперативы
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886103
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp
если у объекта нет рабочих ссылок
это подразумевается само сабой.
даже после delete windows.pic
если откроешь chrome://blob-internals/ ты увидишь список блобов
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886105
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
PetroNotC Sharp
если у объекта нет рабочих ссылок
это подразумевается само сабой.
даже после delete windows.pic
если откроешь chrome://blob-internals/ ты увидишь список блобов
вижу ты начал работать.
Продолжай.
Реши проблему.
Я могу запустить твою функцию при ответе по AJAX.
Напиши её тут.
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886106
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А то придется идти в js ветку(
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886107
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PetroNotC Sharp,
на оперативку это не влияет.
но в папке \Google\Chrome\User Data\Default\blob_storage этих файлов , действительно, нет
...
Рейтинг: 0 / 0
вадя. Встретил твой код на хабре.
    #39886108
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя
PetroNotC Sharp,
на оперативку это не влияет.
но в папке \Google\Chrome\User Data\Default\blob_storage этих файлов , действительно, нет
щас проверю
...
Рейтинг: 0 / 0
25 сообщений из 109, страница 1 из 5
Форумы / Java [игнор отключен] [закрыт для гостей] / вадя. Встретил твой код на хабре.
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]