Dari man gcc
:
-pthreadMenambahkan dukungan untuk multithreading dengan pthreadslibrary. Opsi ini menyetel tanda untuk preprocessor dan linker.
Coba:
gcc -dumpspecs | grep pthread
dan cari apa pun yang dimulai dengan %{pthread:
.
Di komputer saya, ini menyebabkan file dikompilasi dengan -D_REENTRANT
, dan ditautkan dengan -lpthread
. Di platform lain, ini bisa berbeda. Gunakan -pthread
untuk sebagian besar portabilitas.
Menggunakan _REENTRANT
, di GNU libc, mengubah cara kerja beberapa header libc. Sebagai contoh spesifik, itu membuat errno
memanggil fungsi mengembalikan lokasi thread-local.