Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.02.2014, 21:28
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 16.12.2011
Сообщений: 4,415

баг localStorage
этот код забивает пишет в storage пока браузер не упедает, все что он успевает записать остаеться в storage, это что то новенькое или я слоупок?
var data = "";
for(var i = 0; i < 500000; i++) 
  localStorage.setItem("data", data+=i)


убивает 4 гига оперативы как нефиг делать (дальше просто убил процесс).
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #2 (permalink)  
Старый 01.02.2014, 21:52
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Ты асинхронным вычислением строки убиваешь браузер. Что очередь не детская. Что ресурсы при вычислении жрет

Последний раз редактировалось dmitriymar, 01.02.2014 в 21:59.
Ответить с цитированием
  #3 (permalink)  
Старый 01.02.2014, 22:01
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 16.12.2011
Сообщений: 4,415

Сообщение от dmitriymar
Ты асинхронным вычислением строки убиваешь браузер. Что очередь не детская. Что ресурсы при вычислении жрет
поэтому он не успевает обработать переполнение localStorage?
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #4 (permalink)  
Старый 01.02.2014, 22:11
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

Это вопрос к разработчикам браузеров. А факты то. Что очередь дикая. То что вычисление строки жрет немало - получить - вычислить-сохранить. Что сборщик мусора инертен.
Насчет асинхрона и очереди погорячился-синхрон без очереди

Последний раз редактировалось dmitriymar, 01.02.2014 в 22:39.
Ответить с цитированием
  #5 (permalink)  
Старый 02.02.2014, 02:25
Профессор
Посмотреть профиль Найти все сообщения от Maxmaxmaximus7
 
Регистрация: 08.01.2014
Сообщений: 354

Сообщение от dmitriymar
асинхронным вычислением строки
дальше не читал
Ответить с цитированием
  #6 (permalink)  
Старый 02.02.2014, 11:11
Особый гость
Посмотреть профиль Найти все сообщения от monolithed
 
Регистрация: 02.04.2010
Сообщений: 4,260

Во-первых,
Цитата:
Web storage can be viewed simplistically as an improvement on cookies, providing much greater storage capacity (5 MB per origin in Google Chrome, Mozilla Firefox, and Opera; 10 MB per storage area in Internet Explorer) and better programmatic interfaces.
data=''
file=/tmp/$RANDOM

for line in {0..500000}
    do 
        data+=$line
    done

echo $data > $file | ls -lah $file | awk '{print $5}' # 2,8M



Во-вторых, у меня bash тоже подвис на этой операции на несколько минут.

А если при этом еще на каждой итерации дергать файл, то:

➜ time `str=''; tmp=/tmp/$RANDOM; for i in {0..10000}; do str+=$i; echo $str >> $tmp; done`;

real  0m31.761s
user  0m30.484s
sys   0m1.181s


При том что количество итераций в 50 раз меньше!

Последний раз редактировалось monolithed, 02.02.2014 в 12:43.
Ответить с цитированием
  #7 (permalink)  
Старый 02.02.2014, 11:26
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

cyber,
Не наю, если чисто копировать из аякса текстовый файл мега в три - у меня секунд 30 грузит на storage с учетом аякса
Соль походу в том, что оно у тьву каждую цифру перезаписывает в файл на жесткий по обращению localStorage.setItem()
А каждое обращение на запись файла порядка 1мs, в зависимости от винта
Очевидно пишет не по каждому обращению, а буферизирует, иначе часы были бы
Просто походу перезаписать файл 5 миллионов раз

Последний раз редактировалось Deff, 02.02.2014 в 11:39.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
После добавления localstorage в backbone модель, POST запрос ничего не возвращает aphex Общие вопросы Javascript 0 03.12.2013 14:26
Обход элементов localStorage berserk10 Events/DOM/Window 8 11.08.2013 14:55
Не сохраняется localStorage после перезагрузки браузера Бобр Firefox/Mozilla 1 20.10.2011 20:31
Нужна помощь с доработкой JS, исправить 1 баг, можно даже за $ Kanzaki Элементы интерфейса 18 14.09.2011 21:21
Баг с jpeg в ie6 JsLoveR Элементы интерфейса 20 28.01.2010 20:57