PreviousUpNext

15.3.483  src/lib/std/src/io/io-startup-and-shutdown–premicrothread.api

## 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;

};




Comments and suggestions to: bugs@mythryl.org

PreviousUpNext