Поддерживает ли Visual C ++ 2010 библиотеку потоков C ++ 11? - PullRequest
7 голосов
/ 25 октября 2010

Я использую Visual C ++ 2010. Поддерживает ли он библиотеку потоков C ++ 11, чтобы я мог скомпилировать код в этом вопросе ?

Если нет, какая библиотекаЯ использую, что бы поддержать это?

Ответы [ 2 ]

10 голосов
/ 25 октября 2010

Visual C ++ 2010 не предоставляет поддержку потоков C ++ 11 или библиотеки атомарности.

Если вы хотите использовать этот код в Visual C ++ 2010, вам необходимо использовать стороннюю реализацию этих библиотек. Один из вариантов - just :: thread ; это не бесплатно, но у меня есть копия, и я очень доволен ею.

В качестве альтернативы, вы можете использовать другую кроссплатформенную библиотеку потоков, такую ​​как Boost.Thread или OpenThreads или одну из собственных библиотек потоков Windows. Любая из этих опций, вероятно, потребует изменения кода для запуска.

Обратите внимание, что Visual C ++ 11 будет поддерживать эти библиотеки, и они включены в бета-версию Visual C ++ 11.

1 голос
/ 25 октября 2010

VC ++ поддерживает специальный встроенный синтаксис OpenMP (http://msdn.microsoft.com/en-us/library/tt15eb9t(VS.80).aspx) - обратите внимание, что g ++ также поддерживает его, поэтому вы можете получить кросс-платформенный код.

...