O MinGW-w64 suporta std :: thread pronto para uso ao usar o modelo de encadeamento Win32?
Optei pelo modelo de encadeamento Win32 ao instalar a cadeia de ferramentas MinGW-w64, depois de ler que ela oferece melhor desempenho do que a contrapartida do POSIX. Eu não estou qualificado para comparar essa reivindicação sozinho, masaqui está uma fonte para isso.
No começo, pensei que essa opção afetaria apenas o funcionamento interno do tempo de execução do GCC, sem me impedir de usar threads C ++ 11 no meu código, com base emesta resposta eeste comentário por outro usuáriorubenvb.
No entanto, este não parece ser o caso.std::thread
O suporte parece inexistente nesta instalação do MinGW-w64.
Estou invocandog ++ a partir da linha de comando sem outras opções além de-std=c++11
.
Neste ponto, não tenho certeza se:
rubenvb estava errado e é realmente necessário instalar o MinGW-w64 no modelo de encadeamento POSIX para compilar meu código, que depende do C ++ 11thread
biblioteca ou;Eu entendi completamente tudo errado, ou;std::thread
é realmente suportado no meu cenário, simplesmente não é intuitivo.Reforço a parte "fora da caixa" no título. Existe uma biblioteca chamadamingw-std-threads, como apresentado emesta resposta. No entanto, como opção de terceiros, não é relevante para esta questão.
Então, a partir de hoje (maio de 2016), o MinGW-w64 suporta nativamentestd::thread
código dependente, quando instalado com o modelo de encadeamento interno do Win32?