## io-startup-and-shutdown--premicrothread.api
# Compiled by:
#
src/lib/std/src/standard-core.sublib# This module keeps track of open I/O streams,
# and closes themc cleanly at process exit.
#
# NOTE: there is currently a problem with removing
# the at-functions for streams that get dropped
# by the application, but the system limit on
# open files will limit this. XXX BUGGO FIXME
# This api is implemented in:
#
#
src/lib/std/src/io/io-startup-and-shutdown--premicrothread.pkg#
api Io_Startup_And_Shutdown__Premicrothread {
#
Tag;
note_stream_startup_and_shutdown_actions
:
{ init: Void -> Void, # Called at STARTUP_PHASE_5_CLOSE_STALE_OUTPUT_STREAMS
flush: Void -> Void, # Called at FORK_TO_DISK
close: Void -> Void # Called at SHUTDOWN and SPAWN_TO_DISK
}
-> Tag;
change_stream_startup_and_shutdown_actions
:
( Tag,
{ init: Void -> Void, # Called at STARTUP_PHASE_5_CLOSE_STALE_OUTPUT_STREAMS
flush: Void -> Void, # Called at FORK_TO_DISK
close: Void -> Void # Called at SHUTDOWN and SPAWN_TO_DISK
}
)
-> Void;
drop_stream_startup_and_shutdown_actions
:
Tag -> Void;
};