Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Adakah MinGW-w64 dengan model benang Win32 menyokong std::benang secara asli?

Adakah MinGW-w64 dengan model benang Win32 menyokong std::benang secara asli?

DDD
DDDasal
2024-10-31 23:46:29304semak imbas

Does MinGW-w64 with the Win32 threading model support std::thread natively?

Adakah MinGW-w64 menyokong std::thread secara asli dengan model benang Win32?

Apabila menggunakan rantai alat MinGW-w64, memilih Win32 model threading mungkin menimbulkan kebimbangan tentang ketersediaan sokongan thread C 11.

Pada mulanya, dipercayai bahawa std::thread boleh digunakan tanpa mengira model threading berdasarkan pernyataan sebelumnya. Walau bagaimanapun, andaian itu terbukti tidak betul.

Walaupun menggunakan g dengan -std=c 11, std::thread tetap tidak disokong. Pilihan untuk menyelaraskan percanggahan ini ialah:

  • Maklumat salah: Andaian awal bahawa utas C 11 akan berfungsi dengan model penjalin Win32 adalah salah.
  • Salah Faham: Walaupun terdapat pertanyaan, ia masih tidak jelas sama ada sokongan std::thread wujud dalam senario ini.
  • Sokongan tetapi dengan pelaksanaan yang tidak dijangka: std::thread mungkin disokong tetapi bukan dalam cara intuitif.

Walau bagaimanapun, " out of the box" kelayakan dalam soalan tidak termasuk pilihan pihak ketiga seperti mingw-std-threads.

Native std::thread Support

Sehingga Mei 2016, sokongan std::benang asli dalam MinGW-w64 dengan model benang Win32 dicapai dengan memasang pengepala utas mingw-std-benang.

Ini kerana MinGW-w64 tidak mempunyai sokongan utas asli seperti pemasangan GCC lain yang melaksanakan penyusunan benang melalui gthreads atau pthreads. MinGW-w64 juga tidak mempunyai port glibc tetapi menggunakan masa jalan MSVC dan kodnya sendiri untuk mengisi komponen yang hilang.

Versi terbaru MinGW-w64 termasuk port Win32 pthreads ("winpthreads"), yang menerangkan sebab memilih model "pthread" semasa pemasangan mendayakan benang.

Atas ialah kandungan terperinci Adakah MinGW-w64 dengan model benang Win32 menyokong std::benang secara asli?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn