diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2007-04-13 22:34:16 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2007-04-13 22:34:16 +0000 |
commit | 40e572f85a596eebdbc6add920f734e560294b19 (patch) | |
tree | b3a17cef87868c5da35a18176efa783458684d57 /doc | |
parent | Upgrade to 4.7.1 (diff) | |
download | rtems-40e572f85a596eebdbc6add920f734e560294b19.tar.bz2 |
2007-04-13 Joel Sherrill <joel@OARcorp.com>
* user/task.t: Add rtems_iterate_over_all_threads.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/ChangeLog | 5 | ||||
-rw-r--r-- | doc/user/task.t | 46 |
2 files changed, 51 insertions, 0 deletions
diff --git a/doc/ChangeLog b/doc/ChangeLog index 30d0da1eab..5c580d9b25 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -1,3 +1,7 @@ +2007-04-13 Joel Sherrill <joel@OARcorp.com> + + * user/task.t: Add rtems_iterate_over_all_threads. + 2007-03-10 Joel Sherrill <joel@OARcorp.com> PR 1226/cpukit @@ -42,6 +46,7 @@ * porting/interrupts.t: Fix bogus _CPU_ISR_Get_level. 2006-09-07 Ken Peters <ken.peters@jpl.nasa.gov> +2006-09-07 Ken Peters <ken.peters@jpl.nasa.gov> PR 1171/doc * user/timer.t: Correct documentation for rtems_timer_initiate_server. diff --git a/doc/user/task.t b/doc/user/task.t index 115536eb22..8e814a3959 100644 --- a/doc/user/task.t +++ b/doc/user/task.t @@ -31,6 +31,7 @@ by the task manager are: @item @code{@value{DIRPREFIX}task_set_note} - Set task notepad entry @item @code{@value{DIRPREFIX}task_wake_after} - Wake up after interval @item @code{@value{DIRPREFIX}task_wake_when} - Wake up when specified +@item @code{@value{DIRPREFIX}iterate_over_all_threads} - Iterate Over Tasks @item @code{@value{DIRPREFIX}task_variable_add} - Associate per task variable @item @code{@value{DIRPREFIX}task_variable_get} - Obtain value of a a per task variable @item @code{@value{DIRPREFIX}task_variable_delete} - Remove per task variable @@ -1610,6 +1611,51 @@ A clock tick is required to support the functionality of this directive. @page +@subsection ITERATE_OVER_ALL_THREADS - Iterate Over Tasks + +@cindex iterate over all threads +@subheading CALLING SEQUENCE: + +@ifset is-C +@findex rtems_iterate_over_all_threads +@example +typedef void (*rtems_per_thread_routine)( + Thread_Control *the_thread +); + +void rtems_iterate_over_all_threads( + rtems_per_thread_routine routine +); +@end example +@end ifset + +@ifset is-Ada +@example +NOT SUPPORTED FROM Ada +@end example +@end ifset + +@subheading DIRECTIVE STATUS CODES: NONE + + +@subheading DESCRIPTION: + +This directive iterates over all of the existant threads in the +system and invokes @code{routine} on each of them. The user should +be careful in accessing the contents of @code{the_thread}. + +This routine is intended for use in diagnostic utilities and is +not intented for routine use in an operational system. + +@subheading NOTES: + +There is NO protection while this routine is called. Thus it is +possible that @code{the_thread} could be deleted while this is operating. +By not having protection, the user is free to invoke support routines +from the C Library which require semaphores for data structures. + +@page + @subsection TASK_VARIABLE_ADD - Associate per task variable @cindex per-task variable |