Next: , Previous: time, Up: Timefns


8.10 __tz_lock, __tz_unlock—lock time zone global variables

Synopsis

     #include "local.h"
     void __tz_lock (void);
     void __tz_unlock (void);
     

Description
The tzset facility functions call these functions when they need to ensure the values of global variables. The version of these routines supplied in the library use the lock API defined in sys/lock.h. If multiple threads of execution can call the time functions and give up scheduling in the middle, then you you need to define your own versions of these functions in order to safely lock the time zone variables during a call. If you do not, the results of localtime, mktime, ctime, and strftime are undefined.

The lock __tz_lock may not be called recursively; that is, a call __tz_lock will always lock all subsequent __tz_lock calls until the corresponding __tz_unlock call on the same thread is made.