pthread_key_create and !-lpthreads binaries
Robert Watson
rwatson at FreeBSD.org
Sun Mar 13 19:33:55 UTC 2011
Dear threading folk:
This afternoon I wrote some threaded code for Mac OS X, and then checked it
out on FreeBSD and was a bit surprised when it compiled but didn't work.
Turns out, of course, that on Mac OS X I'd omitted -lpthread and not noticed,
as the thread primitives are in libSystem. It ran, and the reason I ran into
trouble is that, although no-op locking calls are fine, getting back "success"
from pthread_key_create() when it has actually failed is problematic.
Would it be possible to make the thread stub for pthread_key_create() return
an error, instead of succeeding (but not actually succeeding)? Or, perhaps
better yet, I should get a link-time error for that function, even though I
shouldn't get one for lock/unlock?
Thanks,
Robert N M Watson
Computer Laboratory
University of Cambridge
More information about the freebsd-threads
mailing list