170 похожих чатов

Всем привет. Ребята, я вот что-то задумался, насколько актуально закрывать лист

на мьютекс во время чтения или просчёта кол-ва элементов.

// QueueSize retrieve number of requests in the queue
func (g *tradingGate) QueueSize() int {
g.queueMutex.Lock()
defer g.queueMutex.Unlock()

return g.queue.Len()
}

Где g.queue *list.List

list.List - он вообще-то потокобезопасный или нет?

9 ответов

11 просмотров

нет

Andrew-Popov Автор вопроса
c
нет

Т.е. надо закрывать так как я и сделал? ИЛи нет - не надо?

Andrew Popov
Т.е. надо закрывать так как я и сделал? ИЛи нет - ...

Смотря зачем вам лист нужен и нет ли у вас горутин в фоне, которые также используют лист

Andrew-Popov Автор вопроса
Web
Смотря зачем вам лист нужен и нет ли у вас горутин...

Конечно же есть. С листом параллельно идёт работа по добавлению в лист новых элементов и по обработке листа, с удалением из него.

Andrew Popov
Конечно же есть. С листом параллельно идёт работа ...

Ну получить длину листа вы можете спокойно в любой момент, это панику не вызовет

Andrew-Popov Автор вопроса
Web
Ну получить длину листа вы можете спокойно в любой...

А разве под капотом len() не пробегает по всему списку для подсчёта? Неужели хранит отдельно?

Andrew Popov
А разве под капотом len() не пробегает по всему сп...

Чтобы пройтись по всему листу нужно много времени, поэтому в хедере хранят

Похожие вопросы

Обсуждают сегодня

@Aiwan что такое база образца?
Alexey
27
Не многие знают, а кто знает, тот уже успел забыть, что в далёком 2004 году эта игра произвела настоящий фурор, настолько революционной была технология, применяемая для её соз...
ICCID
4
коллеги, добрый вечер! А никто не знает как модальная форма может себя закрыть? Ну допустим модальная форма определила, что смысла ей работать нет и хочет вернуть modalResult...
Михаил
83
Короче я тут узнал полный пиздец Что кучу постов которые я создавал через posted Спустя время не могу редактировать и менять Мол телега возвращае ошибку Это реально так ...
inc.
13
Хотя у меня сейчас есть более сложная задача, вот её думаю: как объяснить челу переходного возраста противоположного полу, обучающегося в польском колледже (а-ля наш техникум)...
Вячеслав Кузьменко
15
а сколько всего в IT умерло? Где флеш-игры, их было туча, где они все? Сегодня технология есть, а завтра вжух и мёртвая. Этот wasm сильно напоминает джавовские апплеты, silver...
Constantin F.
5
Добрый день Хочу начать обучение языку, не являюсь представителем it, буду благодарна за помощь, совсем пока не понимаю ничего) Подскажите, пожалуйста, где можно начать первы...
Sara Lala
30
а вы в курсе, что Initialize() не работает? var arr123: array[0..123] of Byte; ... Initialize(arr123, SizeOf(arr123));
Iluha Companets
8
что читать по делфи?вообще 0 в нем
fd dsds
9
верно что я могу удалить эти addq и subq т.к. со стеком никакого взаимодействия нет (исключая call)?
Michael
16
Карта сайта