class type trans_out_obj_channel =object..end
A transactional output channel has a buffer for uncommitted data.
This means that all data written to this channel is collected in the
buffer until either commit_work or rollback_work is called.
When the channel is closed, the buffer may optionally be committed. This is implementation-defined.
The method flush does not have any effect on the transaction
buffer.
method commit_work : unit -> unitFlushes the transaction buffer, and writes its contents to the underlying resource.
method rollback_work : unit -> unitEmpties the transaction buffer