Janet 1.39.1-e9c6678 Documentation
(Other Versions: 1.38.0 1.37.1 1.36.0 1.35.0 1.34.0 1.31.0 1.29.1 1.28.0 1.27.0 1.26.0 1.25.1 1.24.0 1.23.0 1.22.0 1.21.0 1.20.0 1.19.0 1.18.1 1.17.1 1.16.1 1.15.0 1.13.1 1.12.2 1.11.1 1.10.1 1.9.1 1.8.1 1.7.0 1.6.0 1.5.1 1.5.0 1.4.0 1.3.1 )

services

Module for running a number of background processes in a controlled manner. Similar to ev-utils, but more involved with defaults for IO and naming fibers for debugging purposes.

Services can also implicitly launch sibling or child services if needed.

Reference

services/*current-manager* services/*current-service* services/add-service services/all-services services/get-manager services/get-service services/make-manager services/print-all services/remove-service services/set-title services/start-service services/stop-service services/wait


services/*current-manager* keyword source
The currently running service manager, if there is one

services/*current-service* keyword source
The currently running service, if there is one

services/add-service function source
(add-service service-name main-function & args)

Spawn a service

services/all-services function source
(all-services)

Get a list of running services

services/get-manager function source
(get-manager)

Get the current manager. If no manager exists, create one.

services/get-service function source
(get-service)

Get the current service. If not in a service, raise an error

services/make-manager function source
(make-manager &opt log-dir)

Group a number of fibers into a single object for structured concurrency. Also includes utilities for running services like servers in the background.

services/print-all function source
(print-all &opt filter-fn)

Print a table of all running services.

services/remove-service function source
(remove-service service-name)

Remove a service

services/set-title function source
(set-title title)

Set a textual description of the service to describe what it is doing currently

services/start-service function source
(start-service service-name)

Start or restart a service

services/stop-service function source
(stop-service service-name &opt reason)

Stop a running service

services/wait function source
(wait)

Once a number of services have been spawned, call `wait` to block the fiber until the manager is canceled. This lets a manager fiber behave as a service itself.