PPS informs publishers and subscribers when it creates, deletes, or truncates an object.
When PPS creates, deletes, or truncates an object (a file or a directory), it places a notification string into the queue of any subscriber or publisher that has open either that object or the .all special object for the directory with the modified object.
The syntax for this notification string is a special character prefix, followed by the object identifier "@", then the object name, as follows:
Prefix | Example | Meaning |
---|---|---|
+ | +@objectname | PPS created the object. To know if a created object is a file or a directory, call stat() or fstat(). |
- | -@objectname | PPS deleted the object. |
# | #@objectname | PPS truncated the object. |
* | *@objectname | The object has lost a critical publisher. All nonpersistent attributes have been deleted. For more information, see Options and Qualifiers. |
In addition, when an object is deleted, PPS sends a single -@objectname to any application that has that object open. Typical behavior for an application receiving this notification is to close the open file descriptor, since the file is no longer visible in the filesystem (POSIX behavior).