The hunchentoot-recycling-taskmaster Reference Manual

This is the hunchentoot-recycling-taskmaster Reference Manual, version 0.0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Fri May 15 12:28:08 2026 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 hunchentoot-recycling-taskmaster

An experiment to improve multithreading performance of Hunchentoot without any additional dependencies.

Author

Yokota Yuki

License

BSD 2-Clause

Version

0.0.1

Dependency

hunchentoot (system).

Source

hunchentoot-recycling-taskmaster.asd.

Child Components

3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


3.1 Lisp


3.1.1 hunchentoot-recycling-taskmaster/hunchentoot-recycling-taskmaster.asd

Source

hunchentoot-recycling-taskmaster.asd.

Parent Component

hunchentoot-recycling-taskmaster (system).

ASDF Systems

hunchentoot-recycling-taskmaster.


3.1.3 hunchentoot-recycling-taskmaster/taskmaster.lisp

Dependency

package.lisp (file).

Source

hunchentoot-recycling-taskmaster.asd.

Parent Component

hunchentoot-recycling-taskmaster (system).

Public Interface
Internals

3.1.4 hunchentoot-recycling-taskmaster/acceptor.lisp

Dependency

taskmaster.lisp (file).

Source

hunchentoot-recycling-taskmaster.asd.

Parent Component

hunchentoot-recycling-taskmaster (system).

Public Interface
Internals

wait-for-acceptor-shutdown-queue (method).


3.1.5 hunchentoot-recycling-taskmaster/abandon-server.lisp

Dependency

acceptor.lisp (file).

Source

hunchentoot-recycling-taskmaster.asd.

Parent Component

hunchentoot-recycling-taskmaster (system).

Public Interface
Internals

abandon-taskmaster (method).


4 Packages

Packages are listed by definition order.


4.1 hunchentoot-recycling-taskmaster

Source

package.lisp.

Use List
  • alexandria.
  • common-lisp.
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


5.1 Public Interface


5.1.1 Special variables

Special Variable: *default-standby-thread-count*
Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.


5.1.2 Generic functions

Generic Function: abandon-acceptor (acceptor &key lock)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: abandon-acceptor ((acceptor parallel-acceptor) &key lock)

To force an end of ACCEPTOR, destroy all threads and the listen socket. If LOCK is nil, this is done *without* locking. This function should not be called in production (but required for my debugging).

Source

abandon-server.lisp.


5.1.3 Standalone methods

Method: accept-connections ((acceptor parallel-acceptor))

This works like the parental method, except some works for sharing the listen socket.

Package

hunchentoot.

Source

acceptor.lisp.

Method: create-request-handler-thread ((taskmaster recycling-taskmaster) client-connection)

This method is never called for ‘recycling-taskmaster’. See ‘make-parallel-acceptor-thread’ instead.

Package

hunchentoot.

Source

taskmaster.lisp.

Method: execute-acceptor ((taskmaster recycling-taskmaster))

Make initial threads working on ‘parallel-acceptor’.

Package

hunchentoot.

Source

taskmaster.lisp.

Method: execute-acceptor :before ((taskmaster recycling-taskmaster))

Checks the type of ACCEPTOR slot, because recycling-taskmaster needs
a crafted ‘hunchentoot:accept-connections’ not using ‘usocket:with-server-socket’.

Package

hunchentoot.

Source

taskmaster.lisp.

Method: handle-incoming-connection ((taskmaster recycling-taskmaster) client-connection)

This function is the core of ‘recycling-taskmaster’. It is called in the loop of ‘hunchentoot:accept-connections’ on every accept(2). It processes a client-connection by itself and/or controls how many threads working around the process.

Package

hunchentoot.

Source

taskmaster.lisp.

Method: initialize-instance :after ((taskmaster recycling-taskmaster) &rest init-args)

If STANDBY-THREAD-COUNT is supplied, ensure it is equal or less than other count parameters.

Source

taskmaster.lisp.

Method: shutdown ((taskmaster recycling-taskmaster))

Tell every threads to shutdown.

Package

hunchentoot.

Source

taskmaster.lisp.

Method: start :before ((acceptor parallel-acceptor))
Package

hunchentoot.

Source

acceptor.lisp.

Method: stop ((acceptor parallel-acceptor) &key soft)

This works like the parental method, except some works for sharing the listen socket.

Package

hunchentoot.

Source

acceptor.lisp.


5.1.4 Conditions

Condition: recycling-taskmaster-corrupted-error

Signalled when the object was broken by interrupts of ‘abandon-taskmaster’

Package

hunchentoot-recycling-taskmaster.

Source

abandon-server.lisp.

Direct superclasses

hunchentoot-error.

Direct slots
Slot: object
Initargs

:object

Slot: broken-slots
Initform

(quote nil)

Initargs

:broken-slots


5.1.5 Classes

Class: parallel-acceptor
Package

hunchentoot-recycling-taskmaster.

Source

acceptor.lisp.

Direct superclasses

acceptor.

Direct subclasses
Direct methods
Direct Default Initargs
InitargValue
:taskmaster(make-instance (quote recycling-taskmaster))
Class: parallel-easy-acceptor
Package

hunchentoot-recycling-taskmaster.

Source

acceptor.lisp.

Direct superclasses
Direct subclasses

parallel-easy-ssl-acceptor.

Class: parallel-easy-ssl-acceptor
Package

hunchentoot-recycling-taskmaster.

Source

acceptor.lisp.

Direct superclasses
Class: parallel-ssl-acceptor
Package

hunchentoot-recycling-taskmaster.

Source

acceptor.lisp.

Direct superclasses
Direct subclasses

parallel-easy-ssl-acceptor.

Class: recycling-taskmaster

A taskmaster works like ‘hunchentoot:one-thread-per-connection-taskmaster’ except recycling threads when there is a pending connecton.

MAX-THREAD-COUNT and MAX-ACCEPT-COUNT works same as ‘hunchentoot:one-thread-per-connection-taskmaster’.

Thread counter summary:

- The count of all threads is computed by ‘count-recycling-taskmaster-thread’.
Its lower bound is in ‘STANDBY-THREAD-COUNT’ slot.

- ‘busy-thread-count-cell’ counts threads working on a connected socket.

They are in ‘hunchentoot:accept-connections’ and in
our ‘hunchentoot:handle-incoming-connection’.

Thread states:

1. In ‘hunchentoot:handle-incoming-connection’.
They are counted by ‘busy-thread-count-cell’. ‘hunchentoot::acceptor-shutdown-queue’ is used to wait for
they go away.

2. Waiting on the listen socket.
They can be wake by ‘wake-acceptor-for-shutdown-using-listen-socket’. I estimate the number of them by
(- ‘count-recycling-taskmaster-thread’ ‘busy-thread-count-cell’), but it might contain threads at the third or fourth state (below).

3. At other places in the loop of ‘hunchentoot:accept-connections’. It rarely exists. However, when a last thread was this state just before ‘wake-acceptor-for-shutdown-using-listen-socket’, the thread would exit soon and ‘wake-acceptor-for-shutdown-using-listen-socket’ blocks permanently. My ‘hunchentoot:shutdown’ considers this situation.

4. Interrupted and broken, but held by ‘hunchentoot::acceptor-process’. ‘delete-recycling-taskmaster-finished-thread’ deletes them.

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.

Direct superclasses

one-thread-per-connection-taskmaster.

Direct methods
Direct slots
Slot: acceptor-process

recycling-taskmaster tracks threads using a hash-table.

Package

hunchentoot.

Type

hash-table

Initform

(make-hash-table :test (quote equal))

Slot: acceptor-process-lock

A lock for protecting acceptor-process slot.

Initform

(hunchentoot::make-lock "recycling-taskmaster-acceptor-process-lock")

Readers

recycling-taskmaster-acceptor-process-lock.

Writers

This slot is read-only.

Slot: busy-thread-count-cell

The number of threads busy on a client socket.

Initform

(bt2:make-atomic-integer)

Readers

recycling-taskmaster-busy-thread-count-cell.

Writers

(setf recycling-taskmaster-busy-thread-count-cell).

Slot: thread-maker-process

serializing ‘bt:make-thread’

Readers

recycling-taskmaster-thread-maker-process.

Writers

(setf recycling-taskmaster-thread-maker-process).

Slot: thread-maker-requests

how many threads should be created

Initform

(bordeaux-threads:make-semaphore)

Readers

recycling-taskmaster-thread-maker-requests.

Writers

(setf recycling-taskmaster-thread-maker-requests).

Slot: standby-thread-count

The number of how many threads kept on the listen socket.

Type

integer

Initform

hunchentoot-recycling-taskmaster:*default-standby-thread-count*

Initargs

:standby-thread-count

Readers

recycling-taskmaster-standby-thread-count.

Writers

(setf recycling-taskmaster-standby-thread-count).


5.2 Internals


5.2.1 Constants

Constant: +wake-acceptor-for-shutdown-max-retry-count+

How many times ‘hunchentoot:shutdown’ retries ‘wake-acceptor-for-shutdown-using-listen-socket’.

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.

Constant: +wake-acceptor-for-shutdown-timeout+

The timeout used by ‘wake-acceptor-for-shutdown-using-listen-socket’ to avoid an accidental permanent block in our ‘hunchentoot:shutdown’.

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.


5.2.2 Ordinary functions

Function: parallel-acceptor-thread-loop (taskmaster)

The main loop of worker threads of ‘recycling-taskmaster’

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.

Function: thread-maker-loop (taskmaster)

The main loop of ’thread-maker’ made by ‘start-thread-maker-thread’.

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.

Function: wake-acceptor-for-shutdown-using-listen-socket (listen-socket &key timeout compat)

Works like ‘hunchentoot::wake-acceptor-for-shutdown’, except takes the listen socket as an argument, apply a timeout, and utilize ‘usocket:socket-shutdown’.

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.


5.2.3 Generic functions

Generic Function: abandon-taskmaster (taskmaster &key lock)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: abandon-taskmaster ((taskmaster recycling-taskmaster) &key lock)

Abandon all threads kept in TASKMASTER. This is a last resort for handling corrupted taskmaster objects.

Source

abandon-server.lisp.

Generic Function: add-recycling-taskmaster-thread (taskmaster thread)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: add-recycling-taskmaster-thread (taskmaster thread)
Source

taskmaster.lisp.

Generic Function: count-busy-thread (taskmaster)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: count-busy-thread (taskmaster)

Estimates how many threads are on client connections.

Source

taskmaster.lisp.

Generic Function: count-recycling-taskmaster-thread (taskmaster &key lock)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: count-recycling-taskmaster-thread (taskmaster &key lock)
Source

taskmaster.lisp.

Generic Function: delete-recycling-taskmaster-finished-thread (taskmaster)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: delete-recycling-taskmaster-finished-thread (taskmaster)

Delete dead threads kept in TASKMASTER accidentally.

Source

taskmaster.lisp.

Generic Function: make-parallel-acceptor-thread (taskmaster &key thunk)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: make-parallel-acceptor-thread ((taskmaster recycling-taskmaster) &key thunk)

Makes a new thread for ‘parallel-acceptor’.

Source

taskmaster.lisp.

Generic Reader: recycling-taskmaster-acceptor-process-lock (object)
Package

hunchentoot-recycling-taskmaster.

Methods
Reader Method: recycling-taskmaster-acceptor-process-lock ((recycling-taskmaster recycling-taskmaster))

A lock for protecting acceptor-process slot.

Source

taskmaster.lisp.

Target Slot

acceptor-process-lock.

Generic Reader: recycling-taskmaster-busy-thread-count-cell (object)
Generic Writer: (setf recycling-taskmaster-busy-thread-count-cell) (object)
Package

hunchentoot-recycling-taskmaster.

Methods
Reader Method: recycling-taskmaster-busy-thread-count-cell ((recycling-taskmaster recycling-taskmaster))
Writer Method: (setf recycling-taskmaster-busy-thread-count-cell) ((recycling-taskmaster recycling-taskmaster))

The number of threads busy on a client socket.

Source

taskmaster.lisp.

Target Slot

busy-thread-count-cell.

Generic Reader: recycling-taskmaster-standby-thread-count (object)
Generic Writer: (setf recycling-taskmaster-standby-thread-count) (object)
Package

hunchentoot-recycling-taskmaster.

Methods
Reader Method: recycling-taskmaster-standby-thread-count ((recycling-taskmaster recycling-taskmaster))
Writer Method: (setf recycling-taskmaster-standby-thread-count) ((recycling-taskmaster recycling-taskmaster))

The number of how many threads kept on the listen socket.

Source

taskmaster.lisp.

Target Slot

standby-thread-count.

Generic Reader: recycling-taskmaster-thread-maker-process (object)
Generic Writer: (setf recycling-taskmaster-thread-maker-process) (object)
Package

hunchentoot-recycling-taskmaster.

Methods
Reader Method: recycling-taskmaster-thread-maker-process ((recycling-taskmaster recycling-taskmaster))
Writer Method: (setf recycling-taskmaster-thread-maker-process) ((recycling-taskmaster recycling-taskmaster))

serializing ‘bt:make-thread’

Source

taskmaster.lisp.

Target Slot

thread-maker-process.

Generic Reader: recycling-taskmaster-thread-maker-requests (object)
Generic Writer: (setf recycling-taskmaster-thread-maker-requests) (object)
Package

hunchentoot-recycling-taskmaster.

Methods
Reader Method: recycling-taskmaster-thread-maker-requests ((recycling-taskmaster recycling-taskmaster))
Writer Method: (setf recycling-taskmaster-thread-maker-requests) ((recycling-taskmaster recycling-taskmaster))

how many threads should be created

Source

taskmaster.lisp.

Target Slot

thread-maker-requests.

Generic Function: remove-recycling-taskmaster-thread (taskmaster thread)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: remove-recycling-taskmaster-thread (taskmaster thread)
Source

taskmaster.lisp.

Generic Function: request-making-thread (taskmaster &key count)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: request-making-thread (taskmaster &key count)

Requests ’thread-maker’ thread to create a new thread. This is for serializing ‘make-thread’ calls.

Source

taskmaster.lisp.

Generic Function: start-thread-maker-thread (taskmaster)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: start-thread-maker-thread (taskmaster)

Runs a new ’thread-maker’ thread. See comments in ‘handle-incoming-connection’ to see the reason why this is required.

Source

taskmaster.lisp.

Generic Function: wait-for-acceptor-shutdown-queue (acceptor)
Package

hunchentoot-recycling-taskmaster.

Methods
Method: wait-for-acceptor-shutdown-queue (acceptor)

Wait for a notification of ‘hunchentoot::acceptor-shutdown-queue’

Source

acceptor.lisp.


5.2.4 Conditions

Condition: end-of-parallel-acceptor-thread

Thrown when parallel-acceptor-thread ends.

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.

Direct superclasses

condition.

Condition: recycling-taskmaster-shutdown-aborted-warning

Signalled when ‘hunchentoot:shutdown’ for ‘recycling-taskmaster’ gave up.

Package

hunchentoot-recycling-taskmaster.

Source

taskmaster.lisp.

Direct superclasses

hunchentoot-warning.

Direct slots
Slot: taskmaster
Initform

(quote nil)

Initargs

:taskmaster

Slot: reason
Initform

(quote "")

Initargs

:reason


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
A   C   D   E   F   G   H   I   M   P   R   S   T   W  
Index Entry  Section

(
(setf recycling-taskmaster-busy-thread-count-cell): Private generic functions
(setf recycling-taskmaster-busy-thread-count-cell): Private generic functions
(setf recycling-taskmaster-standby-thread-count): Private generic functions
(setf recycling-taskmaster-standby-thread-count): Private generic functions
(setf recycling-taskmaster-thread-maker-process): Private generic functions
(setf recycling-taskmaster-thread-maker-process): Private generic functions
(setf recycling-taskmaster-thread-maker-requests): Private generic functions
(setf recycling-taskmaster-thread-maker-requests): Private generic functions

A
abandon-acceptor: Public generic functions
abandon-acceptor: Public generic functions
abandon-taskmaster: Private generic functions
abandon-taskmaster: Private generic functions
accept-connections: Public standalone methods
add-recycling-taskmaster-thread: Private generic functions
add-recycling-taskmaster-thread: Private generic functions

C
count-busy-thread: Private generic functions
count-busy-thread: Private generic functions
count-recycling-taskmaster-thread: Private generic functions
count-recycling-taskmaster-thread: Private generic functions
create-request-handler-thread: Public standalone methods

D
delete-recycling-taskmaster-finished-thread: Private generic functions
delete-recycling-taskmaster-finished-thread: Private generic functions

E
execute-acceptor: Public standalone methods
execute-acceptor: Public standalone methods

F
Function, parallel-acceptor-thread-loop: Private ordinary functions
Function, thread-maker-loop: Private ordinary functions
Function, wake-acceptor-for-shutdown-using-listen-socket: Private ordinary functions

G
Generic Function, (setf recycling-taskmaster-busy-thread-count-cell): Private generic functions
Generic Function, (setf recycling-taskmaster-standby-thread-count): Private generic functions
Generic Function, (setf recycling-taskmaster-thread-maker-process): Private generic functions
Generic Function, (setf recycling-taskmaster-thread-maker-requests): Private generic functions
Generic Function, abandon-acceptor: Public generic functions
Generic Function, abandon-taskmaster: Private generic functions
Generic Function, add-recycling-taskmaster-thread: Private generic functions
Generic Function, count-busy-thread: Private generic functions
Generic Function, count-recycling-taskmaster-thread: Private generic functions
Generic Function, delete-recycling-taskmaster-finished-thread: Private generic functions
Generic Function, make-parallel-acceptor-thread: Private generic functions
Generic Function, recycling-taskmaster-acceptor-process-lock: Private generic functions
Generic Function, recycling-taskmaster-busy-thread-count-cell: Private generic functions
Generic Function, recycling-taskmaster-standby-thread-count: Private generic functions
Generic Function, recycling-taskmaster-thread-maker-process: Private generic functions
Generic Function, recycling-taskmaster-thread-maker-requests: Private generic functions
Generic Function, remove-recycling-taskmaster-thread: Private generic functions
Generic Function, request-making-thread: Private generic functions
Generic Function, start-thread-maker-thread: Private generic functions
Generic Function, wait-for-acceptor-shutdown-queue: Private generic functions

H
handle-incoming-connection: Public standalone methods

I
initialize-instance: Public standalone methods

M
make-parallel-acceptor-thread: Private generic functions
make-parallel-acceptor-thread: Private generic functions
Method, (setf recycling-taskmaster-busy-thread-count-cell): Private generic functions
Method, (setf recycling-taskmaster-standby-thread-count): Private generic functions
Method, (setf recycling-taskmaster-thread-maker-process): Private generic functions
Method, (setf recycling-taskmaster-thread-maker-requests): Private generic functions
Method, abandon-acceptor: Public generic functions
Method, abandon-taskmaster: Private generic functions
Method, accept-connections: Public standalone methods
Method, add-recycling-taskmaster-thread: Private generic functions
Method, count-busy-thread: Private generic functions
Method, count-recycling-taskmaster-thread: Private generic functions
Method, create-request-handler-thread: Public standalone methods
Method, delete-recycling-taskmaster-finished-thread: Private generic functions
Method, execute-acceptor: Public standalone methods
Method, execute-acceptor: Public standalone methods
Method, handle-incoming-connection: Public standalone methods
Method, initialize-instance: Public standalone methods
Method, make-parallel-acceptor-thread: Private generic functions
Method, recycling-taskmaster-acceptor-process-lock: Private generic functions
Method, recycling-taskmaster-busy-thread-count-cell: Private generic functions
Method, recycling-taskmaster-standby-thread-count: Private generic functions
Method, recycling-taskmaster-thread-maker-process: Private generic functions
Method, recycling-taskmaster-thread-maker-requests: Private generic functions
Method, remove-recycling-taskmaster-thread: Private generic functions
Method, request-making-thread: Private generic functions
Method, shutdown: Public standalone methods
Method, start: Public standalone methods
Method, start-thread-maker-thread: Private generic functions
Method, stop: Public standalone methods
Method, wait-for-acceptor-shutdown-queue: Private generic functions

P
parallel-acceptor-thread-loop: Private ordinary functions

R
recycling-taskmaster-acceptor-process-lock: Private generic functions
recycling-taskmaster-acceptor-process-lock: Private generic functions
recycling-taskmaster-busy-thread-count-cell: Private generic functions
recycling-taskmaster-busy-thread-count-cell: Private generic functions
recycling-taskmaster-standby-thread-count: Private generic functions
recycling-taskmaster-standby-thread-count: Private generic functions
recycling-taskmaster-thread-maker-process: Private generic functions
recycling-taskmaster-thread-maker-process: Private generic functions
recycling-taskmaster-thread-maker-requests: Private generic functions
recycling-taskmaster-thread-maker-requests: Private generic functions
remove-recycling-taskmaster-thread: Private generic functions
remove-recycling-taskmaster-thread: Private generic functions
request-making-thread: Private generic functions
request-making-thread: Private generic functions

S
shutdown: Public standalone methods
start: Public standalone methods
start-thread-maker-thread: Private generic functions
start-thread-maker-thread: Private generic functions
stop: Public standalone methods

T
thread-maker-loop: Private ordinary functions

W
wait-for-acceptor-shutdown-queue: Private generic functions
wait-for-acceptor-shutdown-queue: Private generic functions
wake-acceptor-for-shutdown-using-listen-socket: Private ordinary functions


A.4 Data types

Jump to:   A   C   E   F   H   P   R   S   T  
Index Entry  Section

A
abandon-server.lisp: The hunchentoot-recycling-taskmaster/abandon-server․lisp file
acceptor.lisp: The hunchentoot-recycling-taskmaster/acceptor․lisp file

C
Class, parallel-acceptor: Public classes
Class, parallel-easy-acceptor: Public classes
Class, parallel-easy-ssl-acceptor: Public classes
Class, parallel-ssl-acceptor: Public classes
Class, recycling-taskmaster: Public classes
Condition, end-of-parallel-acceptor-thread: Private conditions
Condition, recycling-taskmaster-corrupted-error: Public conditions
Condition, recycling-taskmaster-shutdown-aborted-warning: Private conditions

E
end-of-parallel-acceptor-thread: Private conditions

F
File, abandon-server.lisp: The hunchentoot-recycling-taskmaster/abandon-server․lisp file
File, acceptor.lisp: The hunchentoot-recycling-taskmaster/acceptor․lisp file
File, hunchentoot-recycling-taskmaster.asd: The hunchentoot-recycling-taskmaster/hunchentoot-recycling-taskmaster․asd file
File, package.lisp: The hunchentoot-recycling-taskmaster/package․lisp file
File, taskmaster.lisp: The hunchentoot-recycling-taskmaster/taskmaster․lisp file

H
hunchentoot-recycling-taskmaster: The hunchentoot-recycling-taskmaster system
hunchentoot-recycling-taskmaster: The hunchentoot-recycling-taskmaster package
hunchentoot-recycling-taskmaster.asd: The hunchentoot-recycling-taskmaster/hunchentoot-recycling-taskmaster․asd file

P
Package, hunchentoot-recycling-taskmaster: The hunchentoot-recycling-taskmaster package
package.lisp: The hunchentoot-recycling-taskmaster/package․lisp file
parallel-acceptor: Public classes
parallel-easy-acceptor: Public classes
parallel-easy-ssl-acceptor: Public classes
parallel-ssl-acceptor: Public classes

R
recycling-taskmaster: Public classes
recycling-taskmaster-corrupted-error: Public conditions
recycling-taskmaster-shutdown-aborted-warning: Private conditions

S
System, hunchentoot-recycling-taskmaster: The hunchentoot-recycling-taskmaster system

T
taskmaster.lisp: The hunchentoot-recycling-taskmaster/taskmaster․lisp file