Вопрос

When one thread manages an std::map adding and removing things, may another thread safely call size() on the map?

Since there are no iterators involved, invalidation is not an issue.

In this case, I suppose the map is always alive. No object-destruction-at-a-bad-moment issues.

Это было полезно?

Решение

No. Size may involve traversal as it is not guaranteed to be O(1).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top