Debug Versus Release

A few features should be used only when debugging. They won’t cause production versions to fail, but they’ll severely diminish the value of using Threading Building Blocks. Here is a list of things that should not be used in production code:

  • Do not set the number of threads with task_scheduler_init. Let the setting be automatic (default) so that the program will run on a wide variety of hardware and make the best use of the processors.

  • Leave TBB_DO_ASSERT undefined or set to zero.

  • Leave TBB_DO_THREADING_TOOLS undefined or set to zero.

Get Intel Threading Building Blocks now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.