5.2 Connection Manager
This module provides functionality for managing pairs of
input and output ports. We have plans to allow a number of different strategies
for doing this.
| (struct connection (timer i-port o-port custodian close?)) |
| timer : timer? |
| i-port : input-port? |
| o-port : output-port? |
| custodian : custodian? |
| close? : boolean? |
A connection is a pair of ports (i-port and o-port) that is
ready to close after the current job if close? is #t. Resources
associated with the connection should be allocated under custodian.
The connection will last until timer triggers.
Runs the connection manager (now just the timer manager).
| |||||||||||||||||||||||||||||||||||
| timeout : number? | |||||||||||||||||||||||||||||||||||
| i-port : input-port? | |||||||||||||||||||||||||||||||||||
| o-port : output-port? | |||||||||||||||||||||||||||||||||||
| cust : custodian? | |||||||||||||||||||||||||||||||||||
| close? : boolean? |
Constructs a connection with a timer with a trigger of timeout that calls
kill-connection!.
| (kill-connection! c) → void |
| c : connection? |
Closes the ports associated with c, kills the timer, and shuts down
the custodian.
| (adjust-connection-timeout! c t) → void |
| c : connection? |
| t : number? |