taskqueue.9 (274496044deb7b60c6396b0571c1b8ceb2f38d7a) taskqueue.9 (a7f5f7948b9d500472d72698a7765cde7edfa3f0)
1.\" -*- nroff -*-
2.\"
3.\" Copyright (c) 2000 Doug Rabson
4.\"
5.\" All rights reserved.
6.\"
7.\" This program is free software.
8.\"

--- 66 unchanged lines hidden (view full) ---

75.Fn taskqueue_drain "struct taskqueue *queue" "struct task *task"
76.Ft void
77.Fn taskqueue_drain_timeout "struct taskqueue *queue" "struct timeout_task *timeout_task"
78.Ft int
79.Fn taskqueue_member "struct taskqueue *queue" "struct thread *td"
80.Ft void
81.Fn taskqueue_run "struct taskqueue *queue"
82.Fn TASK_INIT "struct task *task" "int priority" "task_fn_t func" "void *context"
1.\" -*- nroff -*-
2.\"
3.\" Copyright (c) 2000 Doug Rabson
4.\"
5.\" All rights reserved.
6.\"
7.\" This program is free software.
8.\"

--- 66 unchanged lines hidden (view full) ---

75.Fn taskqueue_drain "struct taskqueue *queue" "struct task *task"
76.Ft void
77.Fn taskqueue_drain_timeout "struct taskqueue *queue" "struct timeout_task *timeout_task"
78.Ft int
79.Fn taskqueue_member "struct taskqueue *queue" "struct thread *td"
80.Ft void
81.Fn taskqueue_run "struct taskqueue *queue"
82.Fn TASK_INIT "struct task *task" "int priority" "task_fn_t func" "void *context"
83.Fn TASK_INITIALIZER "int priority" "task_fn_t func" "void *context"
83.Fn TASKQUEUE_DECLARE "name"
84.Fn TASKQUEUE_DEFINE "name" "taskqueue_enqueue_fn enqueue" "void *context" "init"
85.Fn TASKQUEUE_FAST_DEFINE "name" "taskqueue_enqueue_fn enqueue" "void *context" "init"
86.Fn TASKQUEUE_DEFINE_THREAD "name"
87.Fn TASKQUEUE_FAST_DEFINE_THREAD "name"
88.Fn TIMEOUT_TASK_INIT "struct taskqueue *queue" "struct timeout_task *timeout_task" "int priority" "task_fn_t func" "void *context"
89.Sh DESCRIPTION
90These functions provide a simple interface for asynchronous execution

--- 147 unchanged lines hidden (view full) ---

238.Fa queue .
239Normally this function is only used internally.
240.Pp
241A convenience macro,
242.Fn TASK_INIT "task" "priority" "func" "context"
243is provided to initialise a
244.Va task
245structure.
84.Fn TASKQUEUE_DECLARE "name"
85.Fn TASKQUEUE_DEFINE "name" "taskqueue_enqueue_fn enqueue" "void *context" "init"
86.Fn TASKQUEUE_FAST_DEFINE "name" "taskqueue_enqueue_fn enqueue" "void *context" "init"
87.Fn TASKQUEUE_DEFINE_THREAD "name"
88.Fn TASKQUEUE_FAST_DEFINE_THREAD "name"
89.Fn TIMEOUT_TASK_INIT "struct taskqueue *queue" "struct timeout_task *timeout_task" "int priority" "task_fn_t func" "void *context"
90.Sh DESCRIPTION
91These functions provide a simple interface for asynchronous execution

--- 147 unchanged lines hidden (view full) ---

239.Fa queue .
240Normally this function is only used internally.
241.Pp
242A convenience macro,
243.Fn TASK_INIT "task" "priority" "func" "context"
244is provided to initialise a
245.Va task
246structure.
247The
248.Fn TASK_INITIALIZER
249macro generates an initializer for a task structure.
246A macro
247.Fn TIMEOUT_TASK_INIT "queue" "timeout_task" "priority" "func" "context"
250A macro
251.Fn TIMEOUT_TASK_INIT "queue" "timeout_task" "priority" "func" "context"
248initializes the timeout_task structure.
252initializes the
253.Va timeout_task
254structure.
249The values of
250.Va priority ,
251.Va func ,
252and
253.Va context
254are simply copied into the task structure fields and the
255.Va ta_pending
256field is cleared.

--- 120 unchanged lines hidden ---
255The values of
256.Va priority ,
257.Va func ,
258and
259.Va context
260are simply copied into the task structure fields and the
261.Va ta_pending
262field is cleared.

--- 120 unchanged lines hidden ---