Alu:
Alu>Этот "уродливый костыль" успешно используется в ряде библиотек/языков
В Boost.Thread от него отказались в пользу функциональных объектов, в Thread support library нового стандарта C++ — тоже.
Alu>Он прост, прозрачен
С точки зрения того, кто реализует библиотеку для работы с потоками, — да. Но для пользователя библиотеки её внутренности не особо-то важны, IMHO.
Alu>Не требует никаких вспомогательных средств. Что и требуется.
Жёсткие какие-то требования, однако.
Alu>Статический полиморфизм конечно привнесёт больше гибкости, но плата за это — увеличивается сложность разработки и сложность использования.