Size: a a a

2020 July 20

DP

Denis Paukaev in supapro.cxx
Твое синхронное апи это асинхронное + ожидание под капотом
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
tamtakoe
Эмм... Значение там уже хранится, оно есть в исходных данных map<string, int> описывает исходные данные. А в выходных данных мне нужно то же самое + дополнительное поле другого типа. Т.е. значения или ссылки на эти значения всё-равно придется скопировать... Или я что-то не так понимаю)
Ты что-то не так понимаешь
источник

CD

Constantine Drozdov in supapro.cxx
tamtakoe
Эмм... Значение там уже хранится, оно есть в исходных данных map<string, int> описывает исходные данные. А в выходных данных мне нужно то же самое + дополнительное поле другого типа. Т.е. значения или ссылки на эти значения всё-равно придется скопировать... Или я что-то не так понимаю)
если "extra" отображается в deque, то это больше не map<string, int>, это map<string, ???>
источник

DP

Denis Paukaev in supapro.cxx
tamtakoe
Эмм... Значение там уже хранится, оно есть в исходных данных map<string, int> описывает исходные данные. А в выходных данных мне нужно то же самое + дополнительное поле другого типа. Т.е. значения или ссылки на эти значения всё-равно придется скопировать... Или я что-то не так понимаю)
Ты хочешь чего то странного, даже для js
источник

s

std::slavik in supapro.cxx
Анонимус
Да, механическое устройство не может быть прямо супер-суперскоростным, но как по мне преимуществ у HDD больше чем недостатков
так речь не о преимуществах же, а о том что нужно знать задержки
источник

CD

Constantine Drozdov in supapro.cxx
Denis Paukaev
Твое синхронное апи это асинхронное + ожидание под капотом
Ну я надеюсь, что они не упорядочивают все вызовы, а все-таки умнее действуют
источник

А

Анонимус in supapro.cxx
std::slavik
так речь не о преимуществах же, а о том что нужно знать задержки
Ну ок
источник

DP

Denis Paukaev in supapro.cxx
Constantine Drozdov
Ну я надеюсь, что они не упорядочивают все вызовы, а все-таки умнее действуют
Поток пошедудят как прерывание нужное будет, возможно даже программное
источник

DP

Denis Paukaev in supapro.cxx
Все эти WriteFile так работают
источник

t

tamtakoe in supapro.cxx
Побитый Кирпич
При чём тут сишные массивы? Ты щас скидывал пример с std::map
Это было к совету использовать стандартные JS обертки и не придумывать своего. Так вот, стандартные обертки слишком урезаны по сравнению с той же stl либой
источник

CD

Constantine Drozdov in supapro.cxx
Denis Paukaev
Все эти WriteFile так работают
Т.е. WriteFile делает context switch?
источник

ПК

Побитый Кирпич... in supapro.cxx
tamtakoe
Это было к совету использовать стандартные JS обертки и не придумывать своего. Так вот, стандартные обертки слишком урезаны по сравнению с той же stl либой
Всё верно, но stl либу надо использовать правильно
источник

CD

Constantine Drozdov in supapro.cxx
Я надеюсь, хотя бы на худшей ветке, а не 100%?
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
tamtakoe
Это было к совету использовать стандартные JS обертки и не придумывать своего. Так вот, стандартные обертки слишком урезаны по сравнению с той же stl либой
Ты как стл в жс возвращать будешь?
источник

ПК

Побитый Кирпич... in supapro.cxx
tamtakoe
Эмм... Значение там уже хранится, оно есть в исходных данных map<string, int> описывает исходные данные. А в выходных данных мне нужно то же самое + дополнительное поле другого типа. Т.е. значения или ссылки на эти значения всё-равно придется скопировать... Или я что-то не так понимаю)
struct OutputData {
   std::map<string, int> map;
   MyType extra_field;
};

Я сделал то что ты хотел
источник

DP

Denis Paukaev in supapro.cxx
Constantine Drozdov
Т.е. WriteFile делает context switch?
Ну на сколько я помню код, идёт переход в ядро потом irp пакет вниз спускают драйверу диска, а он потом как запишет дернет колбек который будит поток который операцию вызывал, и я тут не особо вижу варианты без ctx switch, потоку же нечем заняться пока это все крутится
источник

CD

Constantine Drozdov in supapro.cxx
Denis Paukaev
Ну на сколько я помню код, идёт переход в ядро потом irp пакет вниз спускают драйверу диска, а он потом как запишет дернет колбек который будит поток который операцию вызывал, и я тут не особо вижу варианты без ctx switch, потоку же нечем заняться пока это все крутится
Мне казалось, что лучшая ветка просто скопирует в буфер файловой системы и вернёт
источник

🎄T

🎄🎊 R 🎅 Tb| ✡️ 🎊🎄... in supapro.cxx
Denis Paukaev
Ну на сколько я помню код, идёт переход в ядро потом irp пакет вниз спускают драйверу диска, а он потом как запишет дернет колбек который будит поток который операцию вызывал, и я тут не особо вижу варианты без ctx switch, потоку же нечем заняться пока это все крутится
Ну в Линупсе вроде в кэш записывается и при удобном случае на диск скидывается
источник

DP

Denis Paukaev in supapro.cxx
Constantine Drozdov
Мне казалось, что лучшая ветка просто скопирует в буфер файловой системы и вернёт
А ну всякие спекулятивные штуки там могут быть да )
источник

t

tamtakoe in supapro.cxx
Constantine Drozdov
если "extra" отображается в deque, то это больше не map<string, int>, это map<string, ???>
Ага. Именно так. Но <string, int> это же не какая-то константа, это всего лишь описание составного типа, дженерика, шаблона или как тут они называются. Где-то внутри это T1 и T2 и никто не мешает объявить свой тип mymap<string, int>, который будет помимо string и int содержать еще что-то
источник