On 06/23/2010 03:08 PM, Henry Vermaak wrote: > A futex syscall doesn't know anything about threads, it's for locking. > Perhaps I'm misunderstanding you? > The Futex syscall does not lock a Mutex at all. It's a helper for the user space locking action and performs the putting a thread to sleep (called by userspace, if userspace detects that the Mutex to be locked is already taken) and waking up a thread (called by userspace if userspace detects that a thread is waiting on the Mutex it is about to unlock) and moreover the Futex syscall takes care that the system can do some housekeeping in case a thread dies that still has a lock.
The user space stuff is usually done in a library (such as pthread lib in libc. But of course it can be done natively the FPC RTL, as well. -Michael _______________________________________________ fpc-devel maillist - [email protected] http://lists.freepascal.org/mailman/listinfo/fpc-devel
