devxlogo

Enhancing Vector’s Performance

Enhancing Vector’s Performance

Standard vector dynamically allocates the required amount of memory it needs; which saves you the bother of memory management. However, letting vector acquire additional memory slowly one chunk after another is unacceptable under real-time constraints. But this doesn’t mean you have to abandon vector yet. In order to avoid the performance penalty of having it re-allocate memory, you can ensure that it has the right amount of memory allocated in advance, like this:

 class Message { //...		};#include void RealTimeStuff( vector &vm); //severe time constraintsvoid main() {using namespace std; //for vectorvector  msgs; // right before a time-critical code, make room for 1000 Message //objects in advancemsgs.reserve(1000); //now call safelyRealTimeStuff(msgs);}//end main()

devx-admin

Share the Post: