--- sio.pod 2002/11/14 15:57:53 1.5
+++ sio.pod 2002/11/24 19:47:08 1.6
@@ -88,7 +88,8 @@
sios->openw,
sios->closew,
sios->input,
-sios->output.
+sios->output,
+sios->shutdown.
=back
@@ -298,6 +299,7 @@
sio_rc_t (*closew) (sio_t *, al_t *, void *);
sio_rc_t (*input) (sio_t *, al_t *, void *);
sio_rc_t (*output) (sio_t *, al_t *, void *);
+ sio_rc_t (*shutdown) (sio_t *, void *);
} sio_module_t;
Applications reference this variable to create stage intances with
@@ -366,6 +368,16 @@
Any other code will abort the scheduler and leave the stream in an
inconsistent state.
+=item sio_rc_t B<sios-E<gt>shutdown>(sio_t *I<sio>, void *I<u>);
+
+Prepare for a close operation. If this function returns SIO_OK
+then the scheduler will go one more round through the writer
+and the reader so that final handshakes can be delivered to
+upstream modules.
+
+NOTE: The shutdown operation is optional, modules may specify
+a NULL pointer here.
+
=back
=head1 THEORY
|