Normal multithreaded applications should not need the predicates from this section because almost any usage of these predicates is unsafe. For example checking the existence of a thread before signalling it is of no use as it may vanish between the two calls. Catching exceptions using catch/3 is the only safe way to deal with thread-existence errors.
These predicates are provided for diagnosis and monitoring tasks. See also section 10.5, describing more high-level primitives.
true. Otherwise the property is not present.See also thread_statistics/3 to obtain resource usage information and message_queue_property/2 to get the number of queued messages for a thread.
cputime,
inferences, epoch, errors and warnings 
yield different values for each thread. For errors and
warnings statistics/2 
gives the global process count and this predicate gives the counts for 
the calling thread.198There is no 
portable interface to obtain thread-specific CPU time and some operating 
systems provide no access to this information at all. On such systems 
the total process CPU is returned. Thread CPU time is supported on 
MS-Windows, Linux and MacOSX.current_output and can thus be 
redirected using with_output_to/2.