Practical UNIX Programming:
A Guide to Concurrency, Communication, and Multithreading
by Kay. A. Robbins and Steven Robbins
Prentice Hall, 1996
Additional Comments:
Sections 1.5, 1.6, strtok_r
Under some versions of Solaris 2, you might have to compile and lint with the
-D_REENTRANT option so that the prototype of strtok_r in string.h will be
used.
Section 2.15, News biff
The update_list function is similar to the get_data function for the
list object of Section 2.2 in that it returns information stored in
the list and updates the traverse pointer. It also calls lastmod
and updates the time entry in the list if needed. update_list should
not do any I/O. If lastmod returns an error, it should be treated as
if the time has not changed. update_list returns -1 if called with
the traverse pointer past the end of the list and in this case no
data is put in modifyname or modtime.
Section 5.6, Example 5.22
This example assumes that the process will not block for 10 seconds
between the alarm and the read. (found by R. Male)