Mengapa Kod Berbilang Benang Saya Masih Membuang \'std::system_error\' Walaupun Dengan \'-pthread\'?

Susan Sarandon
Lepaskan: 2024-11-02 09:29:31
asal
297 orang telah melayarinya

Why Does My Multithreaded Code Still Throw 'std::system_error' Even With '-pthread'?

Menyusun Kod Berbilang Benang dengan g : 'std::system_error' Diselesaikan

Menghadapi ralat 'std::system_error' semasa menyusun kod berbilang benang dengan g boleh mengecewakan. Walaupun secara eksplisit menyatakan bendera '-pthread', isu ini berterusan.

Menyiasat kod yang diberikan, nampaknya tidak ada masalah yang jelas. Walau bagaimanapun, isu ini timbul daripada pepijat dalam gcc. Penyelesaian yang disediakan oleh ahli sembang SO C menawarkan penyelesaian:

-Wl,--no-as-needed
Salin selepas log masuk

Apabila ditambahkan pada arahan kompilasi, bendera ini menyelesaikan isu tersebut, membenarkan kod berbilang benang menyusun dan berjalan dengan jayanya. Perintah kompilasi yang dikemas kini ialah:

$ g++ main.cpp -o main.out -pthread -std=c++11 -Wl,--no-as-needed
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Kod Berbilang Benang Saya Masih Membuang \'std::system_error\' Walaupun Dengan \'-pthread\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan