std :: závit, POSIX niti, a Win32 závity v MinGW-W64

hlasů
2

Já používám MinGW_W64, a já jsem se rozhodnout, jak pokročit s volbou „navlékání“. Mohu použít buď POSIX niti nebo win32 závity. Zatím jsem byl s použitím C ++ 11 je „std :: závit“ pro mou závitů (který vyžaduje možnost POSIX niti), a jsem opravdu rád rozhraní dělat věci tímto způsobem. Nicméně, jsem četl z různých zdrojů, které POSIX niti jsou podstatně pomalejší než win32 závity, a výkon je velkým problémem pro mě.

Můj projekt nakonec bude multiplatformní, ale teď můj vývoj stroj primárního se systémem Windows 7.

Moje otázka zní: POSIX niti jsou MinGW_W64 je pomalejší než Win32 závity? Pokud ano, jak bych jít o psaní obal, který by mě nechal použitím std :: nit-jako rozhraní, ale za použití win32 závity pod kapotou (nebo najít takový obal, jestli někdo už napsal jeden)?

Položena 13/08/2014 v 03:08
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
3

Existuje již lehký nativní implementace std :: závit a synchronizační primitiva pro MinGW, realizovány v čistém WinAPI: https://github.com/meganz/mingw-std-threads

Je to pouze s hlavičkou lib a měl by pracovat s jakoukoliv verzi MinGW, který má řádnou C ++ 11 podporu.

Odpovězeno 15/12/2014 v 18:29
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more