Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
952 views
in Technique[技术] by (71.8m points)

c++ - What std::_lockit does?

I checked performance of c++ project and results are not so clear to me.
std::_lockit::int() has over 20% of exclusive samples. What does it do and how do I avoid overusing it? I have a lot of things created with std::vector, so there is a hope that these are connected.

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

_Lockit is commonly used in Microsoft's implementation of the STL for debugging iterators. In production environments these can be the cause of significant performance bottlenecks while iterating over containers with a large number of elements.

Debugging iterators can be disabled by defining the macros _HAS_ITERATOR_DEBUGGING and _SECURE_SCL as 0 in your code, or Visual Studio project properties.

Related: Unnecessary locking in STL? (Visual C++ Express)


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...