Многопоточность: переносимая среда выполнения apache против boost :: thread? - PullRequest
2 голосов
/ 25 марта 2010

Какой путь лучше для начинающего студента, который никогда не использовал повышение?

Когда появится новый стандарт, ответ будет очевиден, но теперь у меня есть сомнения. Pro для повышения в том, что он намного ближе к будущему стандарту.

Ответы [ 2 ]

7 голосов
/ 25 марта 2010

Другим преимуществом Boost является то, что он использует общие идиомы C ++ для описания, инициализации, запуска и объединения потоков (используя такие идиомы, как RAII, и разрешая использование функторов и аналогичных инструментов, специфичных для C ++).

Библиотеки нижнего уровня, такие как APR, полагаются на использование C-подобных идиом, которые для разработчика на C ++ могут оказаться более подверженными ошибкам (например, использование указателей на функции).

По моему мнению, Boost :: Thread проще в использовании, потому что он позволяет мне использовать идиомы C ++, которые я использую в другом месте моего кода. С APR я также могу использовать pthreads.

1 голос
/ 25 марта 2010

Поскольку boost :: thread можно рассматривать как черновик для реализации потоков в стандартной библиотеке, использование его и, возможно, замена его на std :: thread через несколько лет может стать лучшей библиотекой потоков, которую нужно знать первым.

...