упущения из-за malloc - PullRequest
0 голосов
/ 03 июля 2018

Я думаю о следующем сценарии и хочу еще раз проверить его у вас.

Один процесс Linux с двумя или более потоками, работающими параллельно на разных ядрах. Допустим, они оба вызывают malloc с одинаковым количеством, так что malloc не нужно будет вызывать mmap. Другими словами, куча достаточно велика и (ранее) увеличена другими вызовами sbrk. В таком случае распределение памяти полностью в пользовательском пространстве. Глядя на git hub, я увидел, что существует мьютекс, защищающий внутренние структуры данных, которые использует malloc.

Мои вопросы: может ли ядро ​​вытеснить поток, если потоки пытаются получить такую ​​же блокировку? Другими словами, один из потоков будет подвергнут наказанию за выполнение из-за того, что другой получил эту блокировку.

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...