Closes a wait-state-collection and all of its states.
The function close-wait-state-collection
closes all of the states in collection. That means that the underlying communication object is closed and the async-io-state objects that are currently associated with collection cannot be used for further I/O and will not receive callbacks anymore.
close-wait-state-collection
does not do anything that affects further processing in collection. In particular, you can add new states to the collection afterwards, and waiting and calling, either by loop-processing-wait-state-collection or wait-for-wait-state-collection and call-wait-state-collection, can continue. loop-processing-wait-state-collection does not stop if close-wait-state-collection
is called inside it.
close-wait-state-collection
is a "nasty" call, because it just kills any async-io-state associated with the collection. Normally should only be used only when you stop using the collection.
close-wait-state-collection
cannot be called on a collection in parallel to itself or loop-processing-wait-state-collection, wait-for-wait-state-collection or call-wait-state-collection. It can be called inside the scope of call-wait-state-collection, and loop-processing-wait-state-collection.
You can use apply-in-wait-state-collection-process to cause execution inside the scope of call-wait-state-collection.
LispWorks User Guide and Reference Manual - 20 Sep 2017