pvmftrecv man page on YellowDog

Man page or keyword search:  
man Server   18644 pages
apropos Keyword Search (all sections)
Output format
YellowDog logo
[printable version]

TRECV(3PVM)			PVM Version 3.4			   TRECV(3PVM)

NAME
       pvm_trecv - Receive with timeout.

SYNOPSIS
       C    #include <sys/time.h>
	    int bufid = pvm_trecv( int tid, int msgtag, struct timeval *tmout )

       Fortran	 call pvmftrecv( tid, msgtag, sec, usec, bufid )

PARAMETERS
       tid     Integer to match task identifier of sending process.

       msgtag  Integer to match message tag; should be >= 0.

       tmout   (or  sec and usec) Time to wait before returning without a mes‐
	       sage.

       bufid   Integer returns the value of  the  new  active  receive	buffer
	       identifier.  Values less than zero indicate an error.

DESCRIPTION
       The  routine  pvm_trecv	blocks	the process until a message with label
       msgtag has arrived from tid.  pvm_trecv then places the	message	 in  a
       new  active  receive  buffer, also clearing the current receive buffer.
       If no matching message  arrives	within	the  specified	waiting	 time,
       pvm_trecv returns without a message.

       A  -1 in msgtag or tid matches anything.	 This allows the user the fol‐
       lowing options.	If tid = -1 then pvm_trecv will accept a message  from
       any process which has a matching msgtag.	 If msgtag = -1 then pvm_trecv
       will accept any message that is sent from process tid.  If tid and msg‐
       tag  are	 both  -1,  then  pvm_trecv  will  accept any message from any
       process.

       In C, the tmout fields tv_sec and tv_usec specify  how  long  pvm_trecv
       will  wait without returning a matching message.	 In Fortran, two sepa‐
       rate parameters, sec and usec are  passed.   With  both	set  to	 zero,
       pvm_trecv behaves the same as pvm_nrecv, which is to probe for messages
       and return immediately even if none are matched.	 In C, passing a  null
       pointer	in  tmout  makes pvm_trecv act like pvm_recv, that is, it will
       wait indefinitely.  In Fortran, setting sec to -1 has the same effect.

       The PVM model guarantees the following about message order.  If task  1
       sends  message A to task 2, then task 1 sends message B to task 2, mes‐
       sage A will arrive at task 2 before message B.  Moreover, if both  mes‐
       sages arrive before task 2 does a receive, then a wildcard receive will
       always return message A.

       If pvm_trecv is successful, bufid will be the new active receive buffer
       identifier.   If	 no message is received, pvm_trecv returns 0.  If some
       error occurs then bufid will be < 0.

       Once pvm_trecv returns, the data in the message can  be	unpacked  into
       the user's memory using the unpack routines.

EXAMPLES
       C:
	    struct timeval tmout;

	    tid = pvm_parent();
	    msgtag = 4 ;
	    tmout.tv_sec = 60;
	    tmout.tv_usec = 0;
	    if ((bufid = pvm_trecv( tid, msgtag, &tmout )) > 0) {
		 pvm_upkint( tid_array, 10, 1 );
		 pvm_upkint( problem_size, 1, 1 );
		 pvm_upkfloat( input_array, 100, 1 );
	    }

       Fortran:
	    CALL PVMFTRECV( -1, 4, 60, 0, BUFID )
	    IF (BUFID .EQ. 0) GO TO 666
	    CALL PVMFUNPACK( INTEGER4, TIDS, 25, 1, INFO )
	    CALL PVMFUNPACK( REAL8, MATRIX, 100, 100, INFO )
       666  CONTINUE

ERRORS
       These error conditions can be returned by pvm_trecv

       PvmBadParam
	      giving an invalid tid value, or msgtag < -1.

       PvmSysErr
	      pvmd not responding.

SEE ALSO
       pvm_bufinfo(3PVM), pvm_getminfo(3PVM), pvm_nrecv(3PVM), pvm_recv(3PVM),
       pvm_unpack(3PVM), pvm_probe(3PVM), pvm_send(3PVM), pvm_mcast(3PVM)

			       8 February, 1994			   TRECV(3PVM)
[top]

List of man pages available for YellowDog

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net