Lol_Man
🆘🆘🆘🆘🆘🆘🆘
Lol_Man
🆘🆘🆘
Lol_Man
Ребята помогите пожалуйста, Я использую select2 мне при клике на select нужно открывать opions на весь экран но если клик припадает на select то он не отрывается z-index не помогает
Lol_Man
https://codepen.io/webdevyriy/pen/gVpaqd
Nikita
🆘
тебя взяли в заложники? вызвать полицию? куда?
Anonymous
Привет! Понимаю что жс группа, но все же, можете подсказать готовые шаблоны верстки подвалов сайта прям с адаптивом? Что-то не могу найти, желательно жсфидл или просто код..
Lol_Man
Сюда
Lol_Man
https://codepen.io/webdevyriy/pen/gVpaqd
Kenan
Что это?
Ссылка
Anonymous
477?
да
MVD
https://codepen.io/anon/pen/voOGwy
А как setTimeout внутри работает? Можешь код привести?
Vladislav
Он отправляет код в queue, которая ждет завершения стека
Vladislav
И это доказательство того, что асинхронный код всегда выполняется только после синхронного
Anonymous
Vladislav
Когда отправляет?
Он синхронно вызывает фукнцию и не дожидается её окончания
MVD
Он синхронно вызывает фукнцию и не дожидается её окончания
Ну там второй аргумент еще есть, куда ты 0 передал. Что он означает?
Vladislav
Ну там второй аргумент еще есть, куда ты 0 передал. Что он означает?
Прекращай рофлить, мы все дружно оценили шутку
MVD
Прекращай рофлить, мы все дружно оценили шутку
Никто не шутит. Я тебя серьезно спрашиваю, если ты расскажешь о своем понимании, я смогу поподробнее объяснить
Vladislav
Никто не шутит. Я тебя серьезно спрашиваю, если ты расскажешь о своем понимании, я смогу поподробнее объяснить
Ты только что говорил о таких низкий проблемах, а сейчас говоришь что основ не знаешь
Vladislav
Тебе не кажется это странным?
Vladislav
MVD
задержку
Ну то есть гдето есть таймер, который считает сколько прошло времени?
Vladislav
к чему ты клонишь
MVD
к чему ты клонишь
Согласен с тем что этот таймер живет в отдельном потоке?
Vladislav
Согласен с тем что этот таймер живет в отдельном потоке?
Боже, давай еще веб воркеров считать отдельным потоком
Vladislav
Это архитектурное решение, нас оно никак не касается
Vladislav
У нас в распоряжении только 1 поток
Vladislav
вебворкер отдельный поток
Это уже на уровне браузера
Vladislav
Это не v8
Lupusregina[beta]
Согласен с тем что этот таймер живет в отдельном потоке?
я не смотрел код, вполне может быть что и в потоке интерпетатора
Lupusregina[beta]
Это уже на уровне браузера
канешно, но это отдельный поток. Даже ифрайм на странице в потоке основной страницы исполняется, а воркер в своем
stay
setTimeout это тоже не V8
Vladislav
stay
Что тогда?
Это апи среды. Браузера/нодв
stay
Его даже в спеки ECMA нет, вроде как
MVD
Это архитектурное решение, нас оно никак не касается
На самом деле касается. Отсюда рождается понимание, почему анимация на твоем сайте не работает, когда пользователь находится на другой вкладке. Отсюда понимание, почему нельзя в обработке http запросов использовать переменную из внешнего скоупа (потому что может придти другой поток и ее перетереть)
MVD
Я имею ввиду requestAnimationFrame или setInterval
Igor
сколько можно одно и то же мусолить? в ноде все, что написано тобой, будет выполнено в одном потоке. и все, что дергается твоим кодом, тоже будет выполнено в том же потоке, даже если это апи ноды. если это промис, то он положится рядом, пока не зарезволвится, и снова будет выполнен в твоем потоке. если это http запрос, то он отправится тоже из твоего потока, положится рядом, пока не придет ответ, попутно выполняя что-то другое, и потом снова зарезолвит с ответом в том же потоке
Lupusregina[beta]
да
(async () => { try { const url = `https://script.googleusercontent.com/macros/echo?user_content_key=v130szmh431KVKGy4bcHUvjwHQxlppr3QNMZOrYi8H3SsZ7AUXNyAPVyZjdUUWBR_U-EyAhHCQtLZwBZ2ZwGSMOamiKZTrRym5_BxDlH2jW0nuo2oDemN9CCS2h10ox_1xSncGQajx_ryfhECjZEnPgeO50H2oLIebPsR4FxgDmhGtIoaDQoYPZCFSKCd6qXMhtnxp79HmmSdC546PERwUWY2nZ7HPw5&lib=MQJwn8hKIj_iMvKBFJIAzHQCWauDT72Yf`; const data = await (await fetch(url)).json(); console.log("data", data); let output = ''; if ( Array.isArray(data.result) ) { for(const obj of r.result) output += obj.join("<br/>") + "<br/><hr/>"; document.getElementById('info').innerHTML = output; } } catch(e) { console.error(e.message); } })();
MVD
Кстати интересный факт. setTimeout не запускает каждый раз новый таймер, а использует только один, ставя только новую метку. Отсюда следует, что можно хоть тысячу таймаутов поставить, производительность не упадет
Igor
тем же, в котором выполняется и твой код
MVD
тем же, в котором выполняется и твой код
Не производительность кода, а нагрузка на CPU
Vladislav
Не производительность кода, а нагрузка на CPU
подожди, я найду смайл фейспалма
MVD
шта?
Твой сайт нагружает процессор, не знал?
Igor
Твой сайт нагружает процессор, не знал?
между производительностью твоего кода и нагрузкой на CPU есть прямая зависимость, не знал?
MVD
между производительностью твоего кода и нагрузкой на CPU есть прямая зависимость, не знал?
код выполняется браузером, браузер запускается на ос, ос использует ресурсы процессора
MVD
и?
не слышал про облачные майнеры? когда заходишь на сайт и на твоем компе случайно начинает крипта майниться? а что для этого используется? cpu правильно
Dika
сколько можно одно и то же мусолить? в ноде все, что написано тобой, будет выполнено в одном потоке. и все, что дергается твоим кодом, тоже будет выполнено в том же потоке, даже если это апи ноды. если это промис, то он положится рядом, пока не зарезволвится, и снова будет выполнен в твоем потоке. если это http запрос, то он отправится тоже из твоего потока, положится рядом, пока не придет ответ, попутно выполняя что-то другое, и потом снова зарезолвит с ответом в том же потоке
I/O многопоточное (такое как операции с днс, фс) и выполняется в libuv тредпуле. Иначе асинхронные функции writeFile, readFile, etc. были бы синхронными и всегда блокировали поток. > все, что дергается твоим кодом, тоже будет выполнено в том же потоке, даже если это апи ноды нет, любой сторонний не-жс код может использовать сколько угодно потоков
MVD
они все равно максимум одно ядро юзают 🤷‍♂️
Вопрос был в том как сайт может процессор нагружать
Igor
Вопрос был в том как сайт может процессор нагружать
у тебя был такой вопрос и ты сам себе на него ответил?
Igor
!
ты себе решил расписать, почему так?
MVD
ты себе решил расписать, почему так?
Возможно я твой вопрос непарвильно понял
Lupusregina[beta]
не работает ):
работает у меня
Lupusregina[beta]
Igor
I/O многопоточное (такое как операции с днс, фс) и выполняется в libuv тредпуле. Иначе асинхронные функции writeFile, readFile, etc. были бы синхронными и всегда блокировали поток. > все, что дергается твоим кодом, тоже будет выполнено в том же потоке, даже если это апи ноды нет, любой сторонний не-жс код может использовать сколько угодно потоков
нет, любой сторонний не-жс код может использовать сколько угодно потоков но мы все же про js код, а не про случай, когда js код дернет программу на джаве, которая будет работать в сколько угодно потоков I/O многопоточное (такое как операции с днс, фс) и выполняется в libuv тредпуле тут не буду отрицать
Dika
нет, любой сторонний не-жс код может использовать сколько угодно потоков но мы все же про js код, а не про случай, когда js код дернет программу на джаве, которая будет работать в сколько угодно потоков I/O многопоточное (такое как операции с днс, фс) и выполняется в libuv тредпуле тут не буду отрицать
> но мы все же про js код, а не про случай, когда js код дернет программу на джаве, которая будет работать в сколько угодно потоков ну апи ноды написано на С++, и оно вполне использует многопоточный libuv, а ты сказал "даже если это апи ноды" к тому же, можно написать свой многопоточный node addon
Igor
Денис
Ребят, все работает, но выдает ошибки. Кто может понять, что здесь не так? https://codepen.io/Benvi27/pen/mNJOBV
Денис
Может местами что поменять?