@mo эээ... есть люди которые знают раст, способны разобраться в реализации двусвязного списка, но никогда не обрабатывали очереди?
Оффтоп, а что вот это такое? Это как то на весь профиль настраивается или на каждый конкретный пост?
Top-level
14 comments
@blue как минимум тем, что кольцевой буфер не раскидан по памяти как невезучий сапёр, и лучше влезает в кеш процессора @blue вообще, дока раста по выбору подходящей коллекции говорит следующее Используйте двусвязный список если.. @blue VecDeque это собственно кольцевой буффер и есть. Реаллокации не настолько тормознутые, и вот не при сравнении со связными списками говорить о фрагментации. @blue собственно, почему я говорю про скорость. Недавно сцепились с человеком, который утверждал, что фильтровать связный список быстрее, потому что он не реаллоцируется Двусвязный список проиграл, более чем в три раза :blobcatgooglytrash: @blue а, ещё в процессе тестирования он, в отличие от вектора вылетел в своп @blue к тому же, кольцевой буфер в целом занимает меньше памяти. Единственное, в чем список лучше — нет амортизации. То есть перформанс будет в среднем значительно хуевее, но без скачков @blue а это настраивается для приложения OAuth, его название (60 символов макс) и "сайт" Husky позволяет при авторизации задать там свои значения) |
@blue а нафига для очереди двусвязный список, если она отлично покрывается кольцевым буфером?
https://doc.rust-lang.org/std/collections/struct.VecDeque.html