Title:

Evaluator Manager Query Functions

Usage:

F(...) where F is one of the functions above

Arguments:

There are two categories of functions in the above list based on the type of arguments on which they operate. These categories are threadOf() and all others.
threadOf()
...:
any object that can be associated with a thread from the global evaluator. This is primarily intended for threadLock objects and the return value is the thread that currently holds the lock, if any. This does operate on variables, but could be extended to do so. The basic idea is that we have a generic function, getThreadOf which is called for each of the objects passed.
Other functions
...:
objects or lists or vectors of class thread or threadGroup. Each object is unravelled into elements of these two classes and each element is processed individually. The return value is a list of the same length as the unravelled list.

Could operate on threadGroup objects individually.

Side Effect:

See Also:

Examples:

        # exit if the standard reader is dead
      if(!isAlive(main.stdin.thread))
        q()
       if(threadOf(lock)!= self())
         getLock(lock)
       if(isAlive(tA))
         suspend(tA)
        # find an idle thread and send it the next task.
       group = threadGroup()
       i = min((1:length(group))[isIdle(group)])
       sendTask(Quote(next.expression), group[i])

Key Words:


Last modified: Mon Apr 7 20:29:26 PDT 1997