在2019年,有一种与平台无关的方法(英特尔,AMD,Windows,* nix等),可以简单地并行化for循环,并使用最少的附加代码来使用所有可用内核。在此,假定以线程安全的方式编写for循环内的代码。让我们还假设支持最新和最好的语言版本。
让我们说这个简单的代码是
std::vector<SomeObject> objects;
for (const auto& object: objects) {
// do some thread-safe work with object
// how to parallelize this?
}