Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

MBX_$PUT_REC_COND                 Domain/OS                  MBX_$PUT_REC_COND


NAME
     mbx_$put_rec_cond - send a message without waiting

SYNOPSIS (C)
     #include <apollo/base.h>
     #include <apollo/mbx.h>

     void mbx_$put_rec_cond(
          void *&mbx_handle,
          void *&buffer_pointer,
          long &buffer_length,
          status_$t *status)

SYNOPSIS (Pascal)
     %include '/sys/ins/base.ins.pas';
     %include '/sys/ins/mbx.ins.pas';

     procedure mbx_$put_rec_cond(
          in mbx_handle: univ_ptr;
          in buffer_pointer: univ_ptr;
          in buffer_length: integer32;
          out status: status_$t);

SYNOPSIS (FORTRAN)
     %include '/sys/ins/base.ins.ftn'
     %include '/sys/ins/mbx.ins.ftn'

           integer*4 mbx_handle, buffer_length, status

           integer*4 buffer_pointer
           character buffer*32760
           pointer /buffer_pointer/ buffer

           call mbx_$put_rec_cond(mbx_handle, buffer_pointer, buffer_length, status)

DESCRIPTION
     Mbx_$put_rec_cond sends a message to the mailbox on mbx_handle.  If there
     is no room for the message, mbx_$put_rec_cond returns immediately with a
     completion status of mbx_$no_room_in_channel.

     mbx_handle
          A mailbox handle.

     buffer_pointer
          A pointer to a buffer containing data to be sent in the partial mes-
          sage.

     buffer_length
          The number of bytes to send from the buffer at buffer_pointer.
          Buffer_length must be less than mbx_$rec_data_max when
          mbx_$put_rec_cond is called by a client, and less than
          mbx_$rec_msg_max when mbx_$put_rec is called by a server.

     status
          The completion status.

NOTE
     If a server receives a failing status from mbx_$put_rec or
     mbx_$put_rec_cond, it must call mbx_$deallocate for the channel associ-
     ated with the failed put.  If this call is not performed, the server
     channel may become unusable; if the operation continues to fail, the
     server will run out of channels.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026