Next: Introduction, Previous: (dir), Up: (dir) [Contents][Index]
This is the legion Reference Manual, version 0.1.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Aug 15 04:57:51 2022 GMT+0.
Next: Systems, Previous: The legion Reference Manual, Up: The legion Reference Manual [Contents][Index]
Jesus asked him, "What is your name?" And he said, "My name is Legion, for we are many." ── Gospel of Mark chapter 5, verse 9
(defparameter *worker*
(make-worker
(lambda (job)
(format t "Processed: ~S~%" job))))
(start *worker*)
(add-job *worker* 10)
(add-job *worker* "Hi")
(stop *worker*)
(defparameter *cluster*
(make-cluster 4
(lambda (job)
(format t "Processed: ~S~%" job))))
(start *cluster*)
(add-job *cluster* 10)
(add-job *cluster* "Hi")
(stop *cluster*)
NOTE: Cluster doesn't guarantee the order of processing jobs.
Base class of workers.
You can specify the value by specifying :queue
.
Return the worker's status which is specifically one of :running
, :idle
, :shutting
and :shutdown
.
Return the number of outstanding jobs of the worker
.
Start the given worker
or cluster
to process jobs.
Stop the given worker
or cluster
after processing its queued jobs.
Stop the given worker
or cluster
immediately (outstanding jobs will be remained in its queue).
Enqueue a new job val
which will be passed to a function specified for make-worker
.
Dequeue a job from worker
's queue.
Base class of clusters.
Return the cluster's status which is one of :running
, :shutting
and :shutdown
.
Start workers of cluster
.
Return workers of cluster
in simple-array.
Copyright (c) 2015 Eitaro Fukamachi (e.arrows@gmail.com)
Licensed under the BSD 3-Clause License.
Next: Files, Previous: Introduction, Up: The legion Reference Manual [Contents][Index]
The main system appears first, followed by any subsystem dependency.
Next: legion/main, Previous: Systems, Up: Systems [Contents][Index]
Simple worker threads with a queue.
Eitaro Fukamachi
BSD 3-Clause
0.1.1
Next: legion/worker, Previous: legion, Up: Systems [Contents][Index]
Eitaro Fukamachi
BSD 3-Clause
Next: legion/queue, Previous: legion/main, Up: Systems [Contents][Index]
Eitaro Fukamachi
BSD 3-Clause
Next: legion/cluster, Previous: legion/worker, Up: Systems [Contents][Index]
Eitaro Fukamachi
BSD 3-Clause
Next: legion/error, Previous: legion/queue, Up: Systems [Contents][Index]
Eitaro Fukamachi
BSD 3-Clause
Previous: legion/cluster, Up: Systems [Contents][Index]
Eitaro Fukamachi
BSD 3-Clause
Next: Packages, Previous: Systems, Up: The legion Reference Manual [Contents][Index]
Files are sorted by type and then listed depth-first from the systems components trees.
Next: legion/main/file-type.lisp, Previous: Lisp, Up: Lisp [Contents][Index]
legion (system).
Next: legion/worker/file-type.lisp, Previous: legion/legion.asd, Up: Lisp [Contents][Index]
legion/main (system).
Next: legion/queue/file-type.lisp, Previous: legion/main/file-type.lisp, Up: Lisp [Contents][Index]
legion/worker (system).
Next: legion/cluster/file-type.lisp, Previous: legion/worker/file-type.lisp, Up: Lisp [Contents][Index]
legion/queue (system).
Next: legion/error/file-type.lisp, Previous: legion/queue/file-type.lisp, Up: Lisp [Contents][Index]
legion/cluster (system).
Previous: legion/cluster/file-type.lisp, Up: Lisp [Contents][Index]
legion/error (system).
legion-error (condition).
Next: Definitions, Previous: Files, Up: The legion Reference Manual [Contents][Index]
Packages are listed by definition order.
Next: legion/cluster, Previous: Packages, Up: Packages [Contents][Index]
common-lisp.
legion-error (condition).
Next: legion/worker, Previous: legion/error, Up: Packages [Contents][Index]
common-lisp.
Next: legion/queue, Previous: legion/cluster, Up: Packages [Contents][Index]
common-lisp.
Next: legion, Previous: legion/worker, Up: Packages [Contents][Index]
common-lisp.
Previous: legion/queue, Up: Packages [Contents][Index]
legion/main
common-lisp.
Next: Indexes, Previous: Packages, Up: The legion Reference Manual [Contents][Index]
Definitions are sorted by export status, category, package, and then by lexicographic order.
Next: Internals, Previous: Definitions, Up: Definitions [Contents][Index]
Next: Generic functions, Previous: Public Interface, Up: Public Interface [Contents][Index]
Return the number of outstanding jobs.
Next: Standalone methods, Previous: Ordinary functions, Up: Public Interface [Contents][Index]
Enqueue VAL to WORKER’s queue. This returns WORKER when the queueing has been succeeded; otherwise NIL is returned.
Dequeue a value from WORKER’s queue. This returns multiple values – the job and a successed flag.
Stop the given WORKER immediately.
It raises an error if the WORKER is not running.
Start the given WORKER.
It raises an error if the WORKER is already running.
Stop the given WORKER after processing its queued jobs. It raises an error if the WORKER is not running.
Next: Conditions, Previous: Generic functions, Up: Public Interface [Contents][Index]
Next: Structures, Previous: Standalone methods, Up: Public Interface [Contents][Index]
error.
Next: Classes, Previous: Conditions, Up: Public Interface [Contents][Index]
Previous: Structures, Up: Public Interface [Contents][Index]
:shutdown
(legion/queue:make-queue)
:queue
:process-fn
This slot is read-only.
This slot is read-only.
(bordeaux-threads:make-recursive-lock "wait-lock")
This slot is read-only.
(bordeaux-threads:make-condition-variable)
This slot is read-only.
Previous: Public Interface, Up: Definitions [Contents][Index]
Next: Generic functions, Previous: Internals, Up: Internals [Contents][Index]
lock.
Previous: Ordinary functions, Up: Internals [Contents][Index]
Previous: Definitions, Up: The legion Reference Manual [Contents][Index]
Jump to: | %
(
A C D E F G I K M N P Q R S T W |
---|
Jump to: | %
(
A C D E F G I K M N P Q R S T W |
---|
Next: Data types, Previous: Functions, Up: Indexes [Contents][Index]
Jump to: | B L P Q S T W |
---|
Jump to: | B L P Q S T W |
---|
Jump to: | C F L P Q S W |
---|
Jump to: | C F L P Q S W |
---|