Paul Kahn
|
OS API that are not thread-safe
|
Paul Kahn
11/20/2008 12:29 PM
post16984
|
OS API that are not thread-safe
I am new to QNX and I see in the documentation that a number of OS API are NOT thread-safe. For example, a number of the
socket library functions are documented as such. I assume this is largely because the underlying function(s) use static
data.
Most of the OS functions are available via a run-time library to which I link. If the sole reason for an API being NOT
thread safe is the use of static data, then there should be no problem across processes because each process has it's
own version of the run-time libraries.
So I have two questions:
1) Are all OS interface libraries (not just the c- or C++ run-time libraries) process-specific? That is, every process
has it's own copy of the interface libraries and those libraries do NOT share data across processes.
2) Is there another reason besides the use of static data that would make an OS API NOT thread-safe?
Thanks...
|
|
|